在这张票中,我们可以通过以下方式在路由更改时将参数传递给组件
<router-view class="view" :propForA="AData"></router-view>
我的问题是如果我们需要将不同的道具传递给不同的路由组件,例如,propForB 属性将具有BData
, propForC
属性将具有CData
如何做到这一点?特别是在vuejs2.0?
在这张票中,我们可以通过以下方式在路由更改时将参数传递给组件
<router-view class="view" :propForA="AData"></router-view>
我的问题是如果我们需要将不同的道具传递给不同的路由组件,例如,propForB 属性将具有BData
, propForC
属性将具有CData
如何做到这一点?特别是在vuejs2.0?
我会发送一个适合您的组件的具有不同值的道具......例如:
<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
}
}
}
}
当然还有其他方法可以达到相同的结果...