2017-03-02 50 views
1

我正在使用以下代码来显示传递值'category'的组件。类别根据用户交互进行更改。然而,一旦一个组件被加载,其数据不会根据道具的变化而改变。在VueJS的道具中更改时重新载入组件

<button @click="selected='new'">Change</button> 
<popup :category="selected"></popup> 

data() { 
    return { 
     selected: 'test' 
    } 
    } 

回答

2

你将不得不把watchercategorypopup组件,如下列:

watch: { 
    category: function(newVal){ 
    this.selected = newVal // or this.openPopup(newVal) is this suits 
    } 
} 
+0

不,一个按钮被点击时 –

+0

您是如何传递'category'到openPop函数被调用它是观察者帮助吗? – Saurabh

+0

@GijoVarghese是的,你必须在'popup'组件中加入这个手表,如果它不起作用,你还可以添加'popup'组件的代码。 – Saurabh