<div v-bind:参数="值/表达式"></div>
,这里的参数就是指定的属性名称。:
<div :id="myId"></div>
css
.red {
color: red;
}
.size {
font-size: 50px;
}
html
<div :class="classes">
color
</div>
js
classes:{
red:true,
size:false
}
//或者
classes:[
"red","size"
],
html
<div :style="styleInfo">
style
</div>
js
styleInfo: [{
color: "red",
},
{
fontSize: "50px"
}]
@
{{num}}
<button @click="num++">click</button>
event
以外的参数<button @click="handleClick(‘1‘,$event)">click</button>
methods:{
handleClick(n,e){
console.log(n);
console.log(e);
console.log("click");
}
}
<button @click.once="num++">click</button>
data
值发生改变,都会变 <input type="text" v-model="msg">
<input type="text" v-model.number="msg" />
<div v-if="age === 18">花一样的年龄</div>
<div v-else-if="age < 18">未成年</div>
<div v-else>成年人</div>
<div v-show="false">show</div> // 不显示
v-if
是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。v-if也是惰性的,如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。v-show
不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 进行切换。v-if
有更高的切换开销,而 v-show
有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show
较好;如果在运行时条件很少改变,则使用 v-if
较好。v-for
的 <template>
<ul>
<li v-for="(val,key,index) in list">
{{index}}--{{val.name}}--{{val.age}}
</li>
</ul>
带有key
<ul>
<li v-for="(item,index) in list" :key="index">
{{index}}--{{item.name}}--{{item.age}}
</li>
</ul>
key
属性,diff算法优化。默认情况下,在渲染DOM
过程中使用 原地复用 ,这样一般情况下会比较高效,但是对于循环列表,特别是依赖某种状态的列表,会有一些问题,我们可以通过:key
属性,来给每个循环节点添加一个标识,建立索引,快速遍历。
<li v-for="(item,index) in list" :key="index" v-if="item.age > 30">
{{index}}--{{item.name}}--{{item.age}}
</li>
只会显示符合条件的
<span v-text="msg"></span>
等价于<span>{{message}}</span>
<p v-html="message"></p>
......
var app = new Vue({
el: ‘#app‘,
data: {
message: ‘<strong>Hello</strong> Vue!‘,
}
})
......
原文:https://www.cnblogs.com/hacke14/p/14224798.html