第二篇 动态数据的计算

javaScript表达式直接计算

原字符串:{{message}}

反转后的字符串:{{message.split('').reverse().join('')}}

method方法

总价:{{totalPrice()}}

:{{testCounter}}

watch属性

总价:{{totalPrice}}

:{{testCounter}}

watch属性异步请求

总价:{{totalPrice}}

watch属性不适用的情况

全名:{{fullName}}

computed属性

全名:{{fullName}}

computed属性实现购物车

总价:{{totalPrice}}

computed属性的get和set方法

全名:{{fullName}}

computed属性的缓存

computed的date: {{date1}}

methods的date: {{date2()}}

computed的date: {{newDate1}}

methods的date: {{newDate2}}

总结

  1. javaScript表达式,适用于简单计算。
  2. methods方法,适用于复杂计算,但页面的重新渲染会导致方法重新调用而影响性能。
  3. watch属性,比起methods属性,可以为特定目标的变动而调用特定方法,有异步功能,但目标有多个时更适合用computed属性。
  4. computed属性,可以为多个依赖的目标设定被调函数,还有缓存机制,有get/set方法,官方比较推荐。
  5. 不同场景应用不同方法,不能一概而论。