1. 单次插值
v1版本:单次插值语法{{*数据}},v2不能使用
v2版本:使用v-once指令
<div id="app4">
<div @click="changeP" v-once>{{msg}}</div>
<!--1.0中使用单次插值语法{{*数据}}-->
<!-- 2.0版本不能使用单次插值语法{{*数据}} ,但是可以使用v-once指令-->
<div @click="changeP">{{msg}}</div>
</div>
<script src="vue.min.js"></script>
<script>
var vm4 = new Vue({
el: "#app4",
data: {
testHTML:'<span style="color:pink;">this should be pink.</span>',
msg:"xixi"
},
methods:{
changeP(){
if(this.msg === 'xixi') {
this.msg = 'haha';
} else {
this.msg = 'xixi';
}
}
}
})
</script>
2.html插值
v1版本:过滤html标签使用语法{{{数据}}},v2不能使用
v2版本:使用v-html指令
<p v-html="testHTML"></p>
<!--v1中使用语法{{{数据}}}插值html-->
<!-- <p>{{{rawHTML}}}</p> -->
3.关于表单的lazy(同理:number、trim,可叠加)
v1中,lazy 当表单失去焦点的时候,存储数据,相当于blur事件
语法示例:
<input type="text" lazy v-model="title">
<h1>{{title}}</h1
v2不支持这样使用,但是你可以给v-model加上修饰符.lazy,效果是一样的
<input type="text" v-model.lazy="title" >
4.filter过滤器
在 Vue1.0 中内置了几种实用的过滤器函数如 uppercase ,vue2.0里,不再有自带的过滤器,需要自己定义过滤器
v1版带参数的写法:
{{msg | wrap 'before' 'after'}}
v2版带参数的写法:
{{msg | wrap('before','after')}}
5.v-for列表循环
v1版带参数的写法:
v-for="(index, item) in items"
v2版带参数的写法:
v-for="(item, index) in items"
6.vm.$set( target, key, value )
v1版带参数的写法:
vm.$set(keypath, value )
example:
vm11.items.$set(0,{childMsg: 'Changed!'})
v2版带参数的写法:
vm.$set( target, key, value )
example:
vm11.$set(this.items,0,{childMsg: 'Changed!'})
同Vue.set()用法一致:
Vue.set(this.items,0,{childMsg: 'Changed!'})