🚩🚩🚩vue专栏:Vue全家桶
👍👍👍 希望各位博主多多支持!!!💖
#### 1.8 计算属性 > * 定义:要用的属性不存在,要通过已有属性计算得来 > * 原理:底层借助了Objcet.defineProperty方法提供的getter和setter **get函数什么时候执行?** (1).初次读取时会执行一次 (2).当依赖的数据发生改变时会被再次调用 **注:** * 计算属性最终会出现在vm上,直接读取使用即可 * 如果计算属性要被修改,那必须写set函数去响应修改,且set中要引起计算时依赖的数据发生改变 ```html 计算属性完整版写法
姓: 名: 全名:
{{fullName}}
``` #### 1.9 键盘事件 `键盘事件语法:@keydown,@keyup` 1. Vue中常用的按键别名: | | | |--|--| |回车|enter| | 删除 | delete (捕获“删除”和“退格”键) | | 退出 | esc | | 换行 | tab (特殊,必须配合keydown去使用) | | 空格 | space | | 上 | up | | 下 | down | | 左 | left | | 右 | right | 2. Vue未提供别名的按键,可以使用按键原始的key值去绑定,但注意要转为kebab-case(短横线命名) 3. 系统修饰键(用法特殊):`ctrl、alt、shift、meta` - 配合keyup使用:按下修饰键的同时,再按下其他键,随后释放其他键,事件才被触发。 - 配合keydown使用:正常触发事件。 4. 也可以使用keyCode去指定具体的按键(不推荐) 5. `Vue.config.keyCodes.自定义键名 = 键码`,可以去定制按键别名 #### 1.10 监视属性 监视属性watch: * 当被监视的属性变化时, 回调函数自动调用 * 监视的属性必须存在,才能进行监视 * 监视的两种写法: * (1).new Vue时传入watch配置 * (2).通过vm.$watch监视 ```html
今天天气很{{ info }}
{{numbers.c.d.e}}
``` **💥💥💥computed和watch之间的区别:** * computed能完成的功能,watch都可以完成 * watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作 > 👍两个重要的小原则: >
> 1.所被Vue管理的函数,最好写成普通函数,这样this的指向才是vm 或 组件实例对象 > > 2.所有不被Vue所管理的函数(定时器的回调函数、ajax的回调函数等、Promise的回调函数),最好写成箭头函数,这样this的指向才是vm 或 组件实例对象 #### 1.11 绑定样式 ##### class样式 写法::class="xxx" xxx可以是字符串、对象、数。 所以分为三种写法,`字符串写法,数组写法,对象写法` - (1)字符串写法 字符串写法适用于:`类名不确定,要动态获取。` ```html
{{name}}
{{name}}
{{name}}
{{name}}
欢迎来到{{name}}
欢迎来到{{name}}
人员列表(遍历数组)
- {{p.name}}-{{p.age}}
汽车信息(遍历对象)
- {{k}}-{{value}}
测试遍历字符串(用得少)
- {{char}}-{{index}}
测试遍历指定次数(用得少)
- {{index}}-{{number}}
学校名称:{{name}}
学校地址:{{address}}
> > vm.$set(target,propertyName/index,value) **用法**: 向响应式对象中添加一个 property,并确保这个新 property 同样是响应式的,且触发视图更新。它必须用于向响 应式对象上添加新 property,因为 Vue 无法探测普通的新增 property (比如 `vm.myObject.newProperty = 'hi'`) ```html //代码