什么是指令
指令是带有v-前缀的特殊attribute,一些指令能够接收一个参数,在指令名称之后以冒号表示。
指令
- 直接使用{{}} 将数据解释为普通文本,而非html代码
- v-html :会将元素当成HTML标签解析后输出 (简单说就是它可以解析标签 比如 用b标签包裹一个文本这个文本输出的就是斜体的)
- v-text : 会将元素当成纯文本输出(他不解析标签)
- v-bind :v-bind指令可以用于响应式地更新html属性
<a v-bind:href="url">...</a>
//可以简写 <a :href="url">...</a>
动态参数
<a v-bind:[Name]="url"> ... </a>
注意:Name会自动把大写转换成小写,所以在定义键的时候要使用小写
- v-once :执行一次性地插值,当数据改变时,插值处的内容不会更新
<span v-once>这个将不会改变: {{ msg }}</span>
-
v-model:双向数据绑定 一般用表单中
-
v-if :v-if 控制切换一个元素是否显示(他是动态的创建和删除一个节点)
v-else 要紧跟在带有v-if或者v-else-if的元素之后
v-else-if -
v-show:是另一个控制元素显示和隐藏的元素,
v-show是通过给元素设置样式display属性,
控制元素的显示和隐藏,
如果v-show的值是true,
则设置display:true,否则设置display:false。
其用法和v-if相似。
注意:v-show不支持元素,也不支持 v-else。 -
v-for :列表渲染
<li v-for="item in items" :key="item">
<li v-for="(item, index) in items">
//in也可以使用of替代
//v-for里面使用值范围
//可以接受整数,数组,对象
- v-pre:{{变量}} 里面的内容不解析(就是原样输出)
- v-slot:插槽
在子组件中使用 占位,就可以在组件的标签中输入内容,放到插槽位置显示
<组件名><h1>这里的内容会呈现在插槽中</h1></组件名>