回顾VUE基础

1.对于任何复杂逻辑,你都应当使用计算属性

2.计算属性是基于它们的依赖进行缓存的。

相比之下,每当触发重新渲染时,调用方法将总会再次执行函数。

3.Vue 通过 watch 选项提供了一个更通用的方法,来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时,这个方式是最有用的。

4.使用 watch 选项允许我们执行异步操作 (访问一个 API),限制我们执行该操作的频率,并在我们得到最终结果前,设置中间状态。这些都是计算属性无法做到的。

5.在 <template> 元素上使用 v-if 条件渲染分组。最终的渲染结果将不包含 <template> 元素。

6.Vue 会尽可能高效地渲染元素,通常会复用已有元素而不是从头开始渲染

7.带有 v-show 的元素始终会被渲染并保留在 DOM 中。v-show 只是简单地切换元素的 CSS 属性 display

v-show 不支持 <template> 元素,也不支持 v-else

8.v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销

9.当 v-if 与 v-for 一起使用时,v-for 具有比 v-if 更高的优先级。 

10.在 v-for 块中,我们拥有对父作用域属性的完全访问权限。v-for 还支持一个可选的第二个参数为当前项的索引。

用 v-for 通过一个对象的属性来迭代,提供第二个的参数为键名,第三个参数为索引

11.建议尽可能在使用 v-for 时提供 key,除非遍历输出的 DOM 内容非常简单,或者是刻意依赖默认行为以获取性能上的提升。

12.

由于 JavaScript 的限制,Vue 不能检测以下变动的数组:

解决方案两个 : 

  1. 当你利用索引直接设置一个项时,例如:vm.items[indexOfItem] = newValue
// Vue.set
Vue.set(vm.items, indexOfItem, newValue)
// Array.prototype.splice
vm.items.splice(indexOfItem, 1, newValue) 
  1. 当你修改数组的长度时,例如:vm.items.length = newLength

解决方法:一个 

vm.items.splice(newLength)

 13.

猜你喜欢

转载自blog.csdn.net/ferrysoul/article/details/81477601