1.鈎子函數
鈎子函數是Windows消息處理機制的一部分,通過設置“鈎子”,應用程序可以在系統級對所有消息、事件進行過濾,訪問在正常情況下無法訪問的消息。鈎子的本質是一段用以處理系統消息的程序,通過系統調用,把它掛入系統。(百度百科)
2.相對於前端來講
對於前端來說,鈎子函數就是指再所有函數執行前,我先執行了的函數,即 鈎住 我感興趣的函數,只要它執行,我就先執行。
3.vue中的mounted
在這發起后端請求,拿回數據,配合路由鈎子做一些事情
類型:Function
詳細:
el被新創建的 vm.el替換,並掛載到實例上去之后調用該鈎子。如果root實例掛載了一個文檔內元素,當mounted被調用時vm.el替換,並掛載到實例上去之后調用該鈎子。如果root實例掛載了一個文檔內元素,當mounted被調用時vm.el 也在文檔內
該鈎子在服務器端渲染期間不被調用。
4.代碼實例
new Vue({
el: '#app',
data: {
totalMoney: 0,
productList: []
},
filters: {
},
mounted: function() {
//這個是鈎子函數
//如果cartView函數要執行,必須先執行鈎子函數
//這個鈎子函數完成了對cratView函數的調用
//應該注意的是,使用mounted 並不能保證鈎子函數中的 this.$el 在 document 中。為此還應該引入 Vue.nextTick/vm.$nextTick
this.$nextTick(function () {
this.cartView()
})
})
},
methods: {
//這個是要執行的函數
cartView: function() {
var _this = this;
this.$http.get("data/cartData.json", {"id": 123}).then(function(res) {
_this.productList = res.body.result.list;
_this.totalMoney = res.body.result.totalMoney;
});
}
}
}
});
