1、 activated
(VUE頁面自動刷新的問題)
在項目中遇到需要添加完數據之后跳轉到展示頁不自動刷新的問題,最開始想到的是created()
或者 mounted()
;沒能實現;因為全局vue.js不強制刷新或者重啟時只創建一次,也就是說,created()
或者mounted()
只會觸發一次。
activated()
:在vue對象存活的情況下,進入當前存在activated()
函數的頁面時,一進入頁面就觸發;可用於初始化頁面數據等。
2、watch
watch
:在vue實例化時將會遍歷所有屬性,然后監聽其變化。<body> <div id="app"> <input v-model="name"/> <span>{{name}}</span> </div> </body> <script> app = new Vue({ el:"#app", data:{ name:'1' }, watch:{ name:function(){ console.log("changed"); this.show(); } }, methods:{ show(){ console.log("show function") } } }) </script>
3、computed 計算屬性
computes
: 其中的屬性不用在data中定義,示例如下:<div id="app"> <input v-model="name" /> <span>{{names}}</span> </div> <script> app = new Vue({ el:"#app", data:{ name:'' }, computed:{ names:function(){ return this.name + "world"; } } }) </script>