2016-12-06 152 views
0

我有一个VueComponent,我需要传递一个值“A”。问题是值A可以通过VueRouter参数或通过模板插值。通过这两个选项设置房产数据的最佳方式是什么?设置属性/数据在VueJs组件

例如

<component :property="value"></component> 

如果我浏览到

/组件/ 8 /编辑

mounted() { 
    this.property = this._route.params.id 
} 

回答

1

你必须搞清楚你想给优先,如果你想哪个参数优先route param,你可以做以下:

mounted() { 
    this.property = this.$route.params.id ? this.$route.params.id : this.property 
} 

如果你想传递给道具为主,你可以这样写:

mounted() { 
    this.property = this.property ? this.property : this.$route.params.id 
} 
+0

轻微的题外话,但相关的可以在“数据”属性是一种功能,当在模板语法参考?即'data {return {property(){return this.otherProperty}}}'或者它应该被计算出来,因为我想要做你所说的并且能够根据需要重写 – Kendall

+0

在聊天中为你留言 – Kendall