在Vue.js中,created()方法是一個常用的生命周期鉤子函數(shù)之一。它會在Vue實例創(chuàng)建之后立即執(zhí)行,在數(shù)據(jù)觀測 (data observer) 和 event/watcher 事件配置之前。這意味著,created()在組件的數(shù)據(jù)初始化之前被調(diào)用,因此它通常用于以下操作:
created() { // 初始化數(shù)據(jù) this.initData() // 訂閱事件 eventBus.$on('event-name', this.handleEvent) // 發(fā)送異步請求 axios.get('/api/data').then(this.handleResponse) }
從上面的代碼塊可以看到,created()可以用來初始化組件的數(shù)據(jù),例如從LocalStorage或Cookie中獲取保存的數(shù)據(jù)。此外,它還可以用來訂閱事件或發(fā)送異步請求。
需要注意的是,由于created()在數(shù)據(jù)觀測之前被調(diào)用,因此這個階段是無法訪問到組件的ref、DOM元素和computed屬性的。如果需要用到這些屬性,應(yīng)該在mounted()中訪問。
mounted() { // 訪問DOM元素 this.$refs.canvas.width = 800 // 訪問computed屬性 console.log(this.completedTask) }
總結(jié)來說,created()是一個非常方便的生命周期函數(shù),在組件創(chuàng)建時完成各種初始化操作。在使用時要注意它的調(diào)用時機和訪問屬性的限制,避免出現(xiàn)一些問題。