[英]Can i change component prop variable binded to another variable in VueJS
[英]How I Can Change The Another Component Data on VueJS
我有一個像這樣的經典 Vue 組件
Vue.component('bar', {
template: `<div class="bar"></div>`,
data () {
return {
blocks: [
]
}
}
});
而且我也有這樣的 Vue 實例。
new Vue ({
el: '#app',
data: {
value: 1
},
methods: {
add: function() {
// here to do
}
}
});
添加功能工作時,我必須添加數據組件塊值。 我不能使用 Vuex,其他解決方案是什么?
您可以使用稱為“事件總線”的方式
https://alligator.io/vuejs/global-event-bus/
或者您可以創建自己的狀態管理
https://v2.vuejs.org/v2/guide/state-management.html#Simple-State-Management-from-Scratch
但我強烈建議你也使用 vuex,因為隨着項目的增長,管理事件和狀態會變得很困難
由於這是一個父 -> 子通信,您可以非常簡單地使用道具:
blocks
。blocks
作為道具傳遞給bar
組件。這里有一些指導:
用 props 定義你的組件:
Vue.component('bar', { template: `<div class="bar">{{blocks.length}}</div>`, props: ['blocks'] });
在父級上定義blocks
(在您的示例中,主 vue 組件):
new Vue ({ el: '#app', data: { blocks: [] }, methods: { add: function() { // do something with blocks } } });
將數據向下傳遞給組件:
<bar :blocks="blocks"></bar>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.