vue $children是指在一個組件內部可以訪問所有子組件的實例。$children屬性是一個數組,包含了當前組件實例下所有子組件的實例。這就使得父組件可以直接訪問和修改子組件的屬性或方法。
// 子組件的定義 Vue.component('child-component', { props: ['name'], methods: { greet: function() { // ... } } }) // 父組件獲取子組件實例 var parentComponent = new Vue({ el: '#parent-component', methods: { accessChild: function() { var childComponent = this.$children[0] childComponent.greet() } } })
需要注意的是,$children的順序與組件的定義順序一致,但這個順序不可靠,因為在異步組件和高階組件等場景下,$children可能會失效。
另外,使用$children訪問子組件實例的方式并不是很好的做法。如果組件結構發生變化,這種做法可能會失效。更好的做法是在父組件中通過props傳遞數據和方法到子組件中,子組件通過$emit事件觸發父組件的方法。