Vue中computed可以用來簡單的拼接需要展示的數據

computed and methods
拼接展示數據的任務, 也可以用methods完成, 但當頁面的數據變化時, methods中的方法會被重新調用(產生不必要的性能消耗), 而methods內的方法只有和自身有關的數據變化時才會被調用
一個簡單的實例

computed只在初始化時被調用
computed只在初始化時被調用
methods會在數據變化時被調用, 即使變動的數據與自身無關
測試源碼
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>computed的使用</title> <script src="https://cdn.bootcss.com/vue/2.5.16/vue.js"></script></head><body> <div id="root"> </div> <script> var vm = new Vue({ el: "#root", data: { name: "zhaozhao", age: 13, hobby: 'Python', nameAgeStyle: { fontSize: "20px", color: "#0c8ac5" } }, template: `<div> <div v-bind:style="nameAgeStyle">computed方式渲染: {{nameAndAge}}</div> <div v-bind:style="nameAgeStyle">methods 方式渲染: {{getNameAndAge()}}</div> <br> <input type="text" v-model="hobby"> <div>愛好: {{hobby}}</div> <div>{{noUse()}}</div> </div>`, computed: { nameAndAge: { get(){ console.log('調用computed'); return `${this.name} ==> ${this.age}`; } } }, methods: { getNameAndAge() { console.log('調用methods'); return `${this.name} ==> ${this.age}`; }, noUse(){ console.log("=methods==nouse=="); } } }) </script></body></html>以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答