在下面:
props: {
id: {
type: String,
default() {
return this.$route.params.id;
},
},
},
然后,假設父組件不提供值,我希望 id 道具的值在路由更改為新 id 時更改。然而,情況似乎并非如此。我的理解正確嗎?有沒有辦法在這里實作反應性?否則我正在考慮設定 required: false ,然后我必須有一些計算的計算欄位,但我寧愿在道具部分直接做
uj5u.com熱心網友回復:
只使用計算不是更好嗎?或者用watch監聽id并執行強制重繪 功能,但我真的不知道如何直接在props中設定action
uj5u.com熱心網友回復:
直接在 props 中提供基于變數的默認值不是一個好主意,defaultin props 被認為提供靜態值而不是反應值
在模板中使用計算值而不是 props 可能是更好的做法
<div>{{ computedId }}</div>
props: {
id: {
type: String,
},
},
computed: {
computedId() {
return this.value || this.$route.params.id
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/378498.html
標籤:javascript Vue.js Vuejs2 反应式编程
上一篇:無法讀取未定義的屬性(讀取“ownerDocument”)
下一篇:vue如何上傳同一張圖片
