vue_組件間通訊:自定義事件、消息發佈與訂閱、槽

自定義事件vue

只能用於 子組件 向 父組件 發送數據函數

能夠取代函數類型的 propsthis

在父組件: 給子組件@add-todo-event="addTodo"編碼

在子組件: 相關方法中,this.$emit("add-todo-event", newTodo);spa

pubsub 消息發佈/訂閱blog

實現任意關係的組件間通訊事件

yarn add pubsub-jsit

實例:event

  • 子組件發佈消息: 要求刪除 todo

methods: {方法

PubSub.publish("deleteTodo", this.index);

}

  • 父組件訂閱消息: 執行回調,刪除 todo

mounted: {

PubSub.subscribe("deleteTodo",(messageName, todosIndex)=>{

this.deleteTodo(todosIndex);

});

}

插槽內容 slot

父組件 向 子組件傳遞"標籤數據"

應對: 不只數據是動態的,結構也是動態的

App.vue 父組件 使用子組件時,聲明用哪些槽:

 

<Child>

</Child>

 

子組件Child 定義槽:

<template>


</template>

插槽顯示的順序,由子組件編碼決定

細節: 在寫公共組件 Child 時,先不寫槽,直接寫正常的代碼,將樣式搞定,再抽出槽

相關文章
相關標籤/搜索