• (Vue)初识Vue


    Vue是什么

      Vue是什么,我们可以从Vue的中文网站来了解它。 https://cn.vuejs.org/ 。Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。也就是说Vue是一个前端的框架,可以用来构建页面,包括web以及app。

    Vue的优势

      对于前端开发人员来说,大家使用过很多的Javascript框架。比如原生的JavaScript,Jquery,angularjs和rectjs等。那么Vue与这些框架相比,它的优势体现在哪里?

    1. Vue 只关注视图层, 采用自底向上增量开发的设计。Vue关注的是视图层,操作的对象是HTML元素。它是渐进的,没有强主张,你可以在原有大系统的上面,把一两个组件改用它实现,当jQuery用;也可以整个用它全家桶开发,当Angular用;还可以用它的视图,搭配你自己设计的整个下层用。你可以在底层数据逻辑的地方用OO和设计模式的那套理念,也可以函数式,都可以,它只是个轻量视图而已,只做了自己该做的事,没有做不该做的事,仅此而已。
    2. Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。Vue.js 是一个更加灵活开放的解决方案。它允许你以希望的方式组织应用程序,而不是在任何时候都必须遵循 AngularJS 制定的规则,这让 Vue 能适用于各种项目.在 Vue 中指令和组件分得更清晰。指令只封装 DOM 操作,而组件代表一个自给自足的独立单元——有自己的视图和数据逻辑。
    3. Vue 学习起来非常简单.在 API 与设计两方面上 Vue.js非常简单,因此你可以快速地掌握它的全部特性并投入开发。Vue 的整体思想是拥抱经典的 Web 技术,并在其上进行扩展。基于 HTML 的模板使得将已有的应用逐步迁移到 Vue 更为容易。

    Hello,Vue

      对于开发人员来说,学习一门语言的第一行代码,多数是从Hello,World开发。使用Vue,首先是要在html页面引入Vue.js文件,引入Vue之后,然后实例化vue对象。Vue的参数是对象,el是Vue需要操作的对象,是一个容器。data可以赋值给Vue绑定的元素。

     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="utf-8" />
     5         <title></title>
     6         <script src="js/vue.js"></script>
     7     </head>
     8     <body>
     9         <div id="box">
    10             {{message}}
    11             </div>
    12         <script>
    13             //vue实例化
    14             //el 绑定html对象,选择器
    15             //data:绑定html对象数据,双向绑定。可以用v-model
    16             var vm = new Vue({
    17                 el:"#box",
    18                 data:{
    19                     message:"hello,vue"
    20                 }
    21             });
    22             
    23         </script>
    24     </body>
    25 </html>

      

    Vue,数据绑定

      Vue的双向数据绑定的原理相信大家也都十分了解了,主要是通过Object对象的defineProperty属性,重写data的set和get函数来实现的,这里对原理不做过多描述,主要还是来实现一个实例。

     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="UTF-8">
     5         <title></title>
     6         <script type="text/javascript" src="js/vue.js" ></script>
     7     </head>
     8     <body>
     9         <div id="box">
    10             <input type="text" v-model="message" />
    11             <br />
    12             {{message}}
    13         </div>
    14         <script>
    15             new Vue({
    16                 el:"#box",
    17                 data:{
    18                     message:"test"
    19                 }
    20             })
    21         </script>
    22     </body>
    23 </html>

      上面的代码通过Vue实现了数据的双向绑定,input的值发生改变,div的text值也会发生改变,通过Vue的v-model指令来实现,v-model指令可以将data中的值绑定给指定的dom对象。如果不使用vue,采用JavaScript事件来事件,我们就需要为input绑定input事件。

  • 相关阅读:
    Valid Palindrome
    LeetCode: Path Sum 2
    LeetCode: Path Sum
    LeetCode:Convert Sorted Array to Binary Search Tree
    LeetCode:Convert Sorted List to Binary Search Tree
    LeetCode: Balanced Binary Tree
    LeetCode: Maximum Depth of Binary Tree
    django文件上传,只上传一张
    URLError: <urlopen error [Errno 10061] >
    error: <class 'socket.error'>, [Errno 101] Network is unreachable: file: /usr/local/python2.7.12/lib/python2.7/socket.py line: 575
  • 原文地址:https://www.cnblogs.com/ggz19/p/9538984.html
Copyright © 2020-2023  润新知