首頁 >web前端 >Vue.js >淺談vue.js中的Props(單向資料流)

淺談vue.js中的Props(單向資料流)

青灯夜游
青灯夜游轉載
2020-10-20 17:25:272575瀏覽

淺談vue.js中的Props(單向資料流)

prop 是單向綁定的:當父元件的屬性變化時,將傳導給子元件,但不會反過來。這是為了防止子元件無意修改了父元件的狀態——這會讓應用程式的資料流難以理解。

另外,每次父元件更新時,子元件的所有 prop 都會更新為最新值。這意味著你不應該在子元件內部改變 prop 。如果你這麼做了,Vue 會在控制台給予警告。

通常有兩種改變prop 的情況:

  1. prop 作為初始值傳入,子元件之後只是將它的初始值作為本地資料的初始值使用;

  2. prop 作為需要被轉換的原始值傳入。

更確切的說這兩種情況是:

1.定義一個局部 data 屬性,並將 prop 的初始值作為局部資料的初始值。

props: ['initialCounter'],
data: function () {
  return { counter: this.initialCounter }
}

2.定義一個 computed 屬性,此屬性從 prop 的值計算。

props: ['size'],
computed: {
  normalizedSize: function () {
    return this.size.trim().toLowerCase()
  }
}

注意在 JavaScript 中物件和陣列是參考類型,指向同一個記憶體空間,如果 prop 是物件或數組,在子元件內部改變它會影響父元件的狀態。

英文原文網址:https://dev.to/lydiahallie/javascript-visualized-event-loop-3dif

相關推薦:

2020年前端vue面試題大匯總(附答案)

vue教學推薦:2020最新的5個vue.js影片教學精選

更多程式相關知識,請造訪:程式設計入門! !

以上是淺談vue.js中的Props(單向資料流)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除