第二章 数据绑定和第一个 Vue 应用
1、v-model 指令,实现数据绑定(绑定 data 里的数据)
2、Vue 的几个常用的生命周期钩子:
created,实例创建完成后调用,此阶段完成了数据的观测等,但尚未挂载,$el 还不可用,需要初始化一些数据时会比较有用;
mounted,el 挂载到实例上后调用,一般我们的第一个业务逻辑会在这里开始;
beforeDestroy,实例销毁之前调用,主要用来解绑一些 addEventListener 监听的事件等。
这些钩子与 el 和 data 类似,也是作为选项写入 Vue 实例内,并且钩子的 this 指向都是调用它的 Vue 实例
3、插值与表达式:
{{}}(双大括号)是最基本的文本插值方法,它会自动将我们双向绑定的数据实时显示出来;
v-pre,如果只是想显示某一功能标签而不进行编译替换,使用此标签;
v-text,更新元素的文本内容,写入里面的所有内容都会以文本形式展现出来,包括 HTML 元素、功能性标签等;
v-html,按普通的 HTML 内容进行插入,但在站点上动态渲染任意的 HTML 可能会非常危险,为避免 XSS 攻击,一般我们要在服务端对用户提交的内容进行处理,可将尖括号转义,也可以只在可信内容上使用 v-html,而永不用在用户提交的内容上。
4、Vue 支持在 {{}} 插值的尾部添加一个管道符 “|” 对数据进行过滤,经常用于格式化文本,通过给 Vue 实例添加 filters 选项来设置自定义规则,过滤器可以串联也可以接收参数,传给过滤器的参数是从第二个开始的,因为第一个参数永远是数据本身。
{{ data | filterA('arg1','arg2' }} // arg1 和 arg2 分别是传给过滤器的第二个和第三个参数
5、v-bind,动态更新 HTML 元素上的属性,比如 id、class 等(绑定元素的属性值);
v-on,绑定事件监听器,实现交互功能;
语法糖,是指在不影响功能的情况下,添加某种方法实现同样的效果,从而方便程序开发,其实也可以说是缩写,v-bind 的语法糖是“:”,v-on 的语法糖是“@”。
<a :href="url"></a> // v-bind 语法糖
<button @click="handleClose" ></button> // v-on 语法糖