vue官網(wǎng)在講解props的單向數(shù)據(jù)流時提到:額外的,每次父級組件發(fā)生更新時,子組件中所有的 prop 都將會刷新為最新的值。這意味著你不應該在一個子組件內(nèi)部改變 prop。如果你這樣做了,Vue 會在瀏覽器的控制臺中發(fā)出警告。但是我測試,直接修改props的值,并未給出任何警告。大家有遇到嗎?
2 回答

嗶嗶one
TA貢獻1854條經(jīng)驗 獲得超8個贊
接著往下看
在兩種情況下,我們很容易忍不住想去修改 prop 中數(shù)據(jù): Prop 作為初始值傳入后,子組件想把它當作局部數(shù)據(jù)來用; Prop 作為原始數(shù)據(jù)傳入,由子組件處理成其它數(shù)據(jù)輸出。 對這兩種情況,正確的應對方式是: 定義一個局部變量,并用 prop 的值初始化它: props: ['initialCounter'], data: function () { return { counter: this.initialCounter } } 定義一個計算屬性,處理 prop 的值并返回: props: ['size'], computed: { normalizedSize: function () { return this.size.trim().toLowerCase() } }
添加回答
舉報
0/150
提交
取消