在Vue.js中,mounted是一個生命周期鉤子(hook),它在組件被掛載到DOM之后立即調用。這個鉤子函數常用于執行需要直接操作DOM的代碼,因為在這個階段,模板已經被渲染并插入到DOM中。
具體來說,mounted鉤子可以用于:
- DOM操作:在組件掛載后獲取或操作DOM元素,比如初始化第三方庫、設置焦點等。
- 數據請求:雖然通常建議在created鉤子中發起數據請求,但如果請求的數據與DOM操作直接相關,mounted也是一個合適的地方。
- 事件監聽:添加事件監聽器,比如窗口大小變化、滾動事件等。
- 啟動定時器:設置定時器或間隔器來更新組件數據。
示例代碼:
export default {
data() {
return {
message: 'Hello, Vue!'
};
},
mounted() {
console.log('Component has been mounted!');
// Example of DOM manipulation
this.$nextTick(() => {
const element = this.$refs.myElement;
element.style.color = 'blue';
});
}
}
在這個示例中,mounted鉤子用于在組件掛載后改變一個DOM元素的樣式。注意使用this.$nextTick()來確保在DOM更新后進行操作。