在Vue.js中,帶的?$?符號用于表示 Vue實例的屬性和方法。
這些屬性和方法是Vue框架內部定義的,主要用于方便開發者在組件內部訪問和使用。
常見的帶$的屬性和方法:
- ?$data?:用于訪問組件的內部數據對象,包含組件內定義的所有響應式數據。
- ?$props?:用于訪問從父組件傳遞到子組件的屬性。
- ?$el?:用于訪問組件掛載的根DOM元素。
- ?$options?:用于訪問組件實例的初始化選項,包括data、props等。
- ?$refs?:包含所有具有ref特性的DOM元素或子組件實例,可以通過它來獲取對應的組件實例或DOM元素。
- ?$parent?:表示當前實例的父實例。
- ?$children?:表示當前實例的子實例數組。
- ?$emit?:用于在子組件中觸發事件,通知父組件某些事件的發生。
- ?$on?:用于監聽當前實例上的自定義事件。
- ?$nextTick?:在下一次DOM更新循環結束之后執行延遲回調,常用于在數據更新后操作DOM。
- ?$watch?:用于觀察數據的變化,當數據發生變化時,會觸發指定的回調函數。
- ?$router?(如果使用Vue Router):表示Vue Router實例對象,用于實現頁面跳轉等路由操作。
- ?$store?(如果使用Vuex):表示Vuex狀態管理實例,用于訪問和管理應用的狀態。
使用場景和示例
- data和props?:在組件的
data
函數和props
數組中定義數據和屬性,然后在組件的方法中通過this.$data
和this.$props
訪問這些數據和屬性。 - emit和on?:在子組件中使用
this.$emit
觸發事件,在父組件中使用?v-on?或?@?監聽這些事件。