Vue
文本插值
{{message}}
视为纯文本插值,即便message绑定的文本包含html标签,也不会作为样式进行渲染。
内部允许填入简单js表达式,但不能解析js语句。
v-text
标签插值,改变整个标签内的内容,如果绑定的文本中包含标签,则会以对应的样式进行渲染。
v-once
标签插值,但仅在初次加载时替换值。
v-html
标签插值,并将内部的文本视为链接。
如果在v-html标签中嵌入用户输入的js代码(由script标签对包含的内容),则浏览器会默认执行。为了避免用户进行非法操作,应该尽可能使用纯文本插值而不是链接插值。
过滤器 filter
Vue对象的选项之一,内部是不同的函数,用于在文本中进行简单的处理。
指令
写在html标签内、以v-前缀的属性,其值期望是单个js表达式(v-for除外),责任是当值改变时,将其响应式地作用到DOM树。
v-show
用于显示或隐藏特定的html元素,相对来说有更高的初始渲染开销,通过v-show隐藏的标签在dom树里仍然存在。
v-if
和V-show作用相同,相对来说有更高的切换开销,隐藏的标签在dom树里不存在。
v-else和v-else-if
与v-if一起使用。
v-on
用于监听dom事件,需要在指令和接事件名。
函数可以写在初始化vue对象时的methods选项里。
v-pre
v-model
用于在表单<input>、<textarea>及<select》元素上创建双向数据绑定,自动更新元素。它会对极端场景进行特殊处理。
全局注册
组件
自定义组件名称使用多个单词,避免和html元素冲突。
创建后需要先注册才能被识别。
- 全局注册:使用
Vue.component(),注册完成后可在多个实例中使用 - 局部注册:在根实例的属性注册
组件之间的数据传递
props
从父组件的属性传入数据,由子组件的props接收。