Vue学习笔记一
2017-09-04 16:40
423 查看
v-once
当name修改的时候,不会改变,只绑定一次,并且会影响到span节点中所有的数据绑定<span v-once>姓名:{{name}}</span>
v-html
这里讲rawHTML解析为HTML代码,主要使用在后台编辑文章发布的时候<span v-html="rawHTML"></span>
数据绑定时,也可以计算,但是必须是单个表达式,对于if语句采用三元表达式
例如通过后台获取图片名称<img v-bind:src=" name+'.png' ">
修饰符的使用
阻止表单默认事件<form v-on:submit.prevent = "onSubmit"></form>
计算属性
官网推荐只是进行简单的计算,不要进行复杂的计算简单计算:
<span>{{count+1}}<span>
复杂计算:
<div id="app"> <p>{{message}}</p> <p>{{reverseMessage}}</p> </div> <script type="text/javascript"> var app = new Vue({ el:"#app", data:{ message: "xiaoD", }, computed:{ reverseMessage: function(){ return this.message.split('').reverse().join('') } } }) </script>
上面的reverseMessage只是依赖于message。
计算属性 VS 方法
这两种方法实现起来最后的结果是一样的,但是计算属性是基于它们依赖的依赖进行缓存的。只要它的依赖没有改变,那么访问reverseMessage会马上返回结果,不会重新执行函数。如果它没有依赖,只是单纯的返回一个时间,那么就一直不会改变。watch
对于数据的监听,还有一个watch属性,通常情况下我们使用computed<div id="app"> <input type="text" v-model="firstName" v-bind:value="firstName"> <input type="text" v-model="lastName" v-bind:value="lastName"> <input type="text" v-model="fullName" v-bind:value="fullName"> </div> <script type="text/javascript"> var app = new Vue({ el:"#app", data:{ firstName:'', lastName:'', fullName:'' }, watch:{ firstName: function(val){ this.fullName = val + "--" +this.lastName }, lastName: function(val){ this.fullName = this.firstName + "--" + val } } }) </script>
计算属性的setter
在控制台输入app.fullName = ‘xiao D’就会得到结果,这里记住在data中不能够定义fullName,因为fullName是计算属性<div id="app"> <input type="text" v-model="firstName" v-bind:value="firstName"> <input type="text" v-model="lastName" v-bind:value="lastName"> <span>{{fullName}}</span> </div> <script type="text/javascript"> var app = new Vue({ el:"#app", data:{ firstName:'', lastName:'', }, computed:{ fullName: { get: function(){ return this.firstName + ' ' + this.lastName }, set: function(newFullname){ var names = newFullname.split(' ') this.firstName = names[0] this.lastName = names[1] } } } }) </script>
相关文章推荐
- vue.js中的各种问题记录(包括环境问题和学习笔记)
- Vue.js学习笔记: 数据绑定语法---绑定表达式
- vue学习笔记3——外部引入css和路由的一部分
- Vue学习笔记之表单输入控件绑定
- vue学习笔记
- vue学习笔记5——路由相关配置,引入其他插件等
- vue 学习笔记(一)
- [置顶] h5学习笔记:vue 路由部署服务器子目录问题
- Vue.js第一天学习笔记(数据的双向绑定、常用指令)
- vue学习笔记
- vue入门学习笔记
- Vue学习笔记(3)关于Vue的计算属性
- Vue.js - 学习笔记 (一)
- vue学习笔记[1] 开始
- vue.js学习笔记-4
- VUE学习笔记二:基础语法
- Vue 学习笔记1之安装
- Vue.js学习笔记:axios
- vue.js学习笔记-10
- vue 学习笔记 part-4 ->v-on指令