声明式渲染:vue的核心是一个允许你才用一个简洁的模板语法来声明式的将数据渲染进行DOM的系统

html部分:
<div id="app">
  {{message}}
</div>
vue部分:
var app=new Vue({
  el:'#app',
  data:{
    message:'Hello Vue!'
  }
})

  除了绑定插入文本的内容,我们还可以才用这样的方式绑定DOM元素属性:

<div id="app-2">
  <span v-bind:title="message">
    Hover your mouse over me for a few seconds to see my dynamically bound title!
  <span>
</div>
Vue部分:
var app2=new Vue({
  el:'#app-2',
  data:{
    message:'You loaded this page on'+new Data();
  }
})

 你看到的v-bind属性被称为指令。指带有v的前缀,表示vue提供的特殊属性,他们在渲染DOM上应用特殊的响应式行为

二、条件与循环

控制切换一个元素的显示也相当简单。

html部分
<div id="app-3">
  <p v-if="seen">Now you see me</p>
</div>
vue部分:
var app3=new Vue({
  el:'#app-3',
  data:{
    seen:true
  }
})

  当seen为false时,你会发现Now you see me消失了。

这个例子演示了我们不仅可以绑定Dom文本到数据,也可以绑定DOM结构到数据,vue提供了一个强大的国度效果系统,可以在vue插入/删除元素是自动应用国度效果。

也有其他指令,每个有特殊的功能,v-if指令可以绑定数据到数组来渲染一个列表:

<div id="app-4">
  <ol>
    <li v-for="todo in todos">
      {{todo.text}}
    </li>
  </ol>
</div>
vue部分:
var app4=new Vue({
  el:'#app-4',
  data:{
    todos:[
      {text:'learn javascript'},
      {text:'learn Vue'},
      {text:'Bulid something awesome'}
    ]
  }
})

  三、处理用户输入

v-on绑定一个监听事件用于调用我们vue实例中定义的方法:

<div id="app-5">
  <p>{{message}}</p>
  <button v-on:click="reverseMessage">Reverse Message</button>
</div>
vue部分:
var app5=new Vue({
  el:'#app-5',
  data:{
    message:'Hello World'
  },
  methods:{
    reverseMessage:function(){
      this.message=this.message.split('').reverse().join('')
    }
  }
})

  在reverseMessage方法中,我们没有接触DOM的情况下更新了应用的状态,所有的DOM操作都有vue来处理,只需写代码的逻辑

vue的v-model指令,使得在表单输入和应用状态中做双向数据绑定变得非常轻巧

  

<div id="app-6">
  <p>{{message}}</p>
  <input v-model="message">
</div>
vue部分:
var app6=new Vue({
  el:'#app-6',
  data:{
    message:'Hello World'
  }
})

  

最新文章

  1. ASP.NET 连接MySQL数据库 详细步骤
  2. Android so lib库远程http下载和动态注册
  3. 通过 ANE(Adobe Native Extension) 启动Andriod服务 推送消息(四)
  4. 关于在css里设置图片圆角的问题
  5. STS安装
  6. 深入分析Java I/O 工作机制
  7. gradle 编译kafka源码慢
  8. zabbix异常信息修改已确认,为未确认
  9. 1405ST软件测试课的要求补充说明
  10. dialog 关闭 清除
  11. C - Least Crucial Node
  12. 20155208徐子涵 2016-2017-2 《Java程序设计》第3周学习总结
  13. http的长连接和短连接(数据库也一样)
  14. html注释快捷键
  15. android图形系统概述
  16. PhantomJS与CasperJS在Windows下的安装与使用
  17. Redis(七)-- SpringMVC整合Redis集群
  18. LeetCode——Palindrome Number
  19. React中使用UEditor
  20. 使用ssh client与bash scripts轻松管理多台主机

热门文章

  1. 【详细、开箱即用】.NET企业微信回调配置(数据回调URL和指令回调URL验证)
  2. Java clone() 方法克隆对象——深拷贝与浅拷贝
  3. [考试总结]noip模拟47
  4. TypeScript 中高级类型的理解?有哪些?
  5. 第十一章 Net 5.0 快速开发框架 YC.Boilerplate --图数据库模块Neo4j
  6. 羽夏看Win系统内核——环境搭建
  7. JavaScript深拷贝实现方式
  8. 机器学习——正则化方法Dropout
  9. 洛谷P1449——后缀表达式(栈模拟)
  10. springboot:@ConditionalOnProperty根据不同时机注入不同实现的bean