在this ticket中,当路线通过
更改时,我们可以将参数传递给组件<router-view class="view" :propForA="AData"></router-view>
我的问题是如果我们需要将不同的道具传递给不同的路由组件,
比方说,例如,propForB属性将BData
,propForC
属性将具有CData
如何实现?特别是在vuejs2.0?
答案 0 :(得分:1)
我会发送一个支柱,其中包含适合您组件的不同值...例如:
<router-view class="view" :propData="propToSend"></router-view>
然后就是这样的
export default {
data: function () {
return {
propAData: {
something: 'value',
somethingElese: ['other', 'value']
},
propBData: {
somethingOther: 123
},
propToSend: null
}
},
watch: {
'$route': function (val, oldVal) {
if (this.$route.name === 'Something') {
this.propToSend = this.propAData
} else {
this.propToSend = this.propBData
}
}
}
}
当然还有其他方法可以达到同样的效果......