v-model和sync修飾符

  場景:  vue

  在用vue開發的過程當中咱們常常會遇到父子組件共用同一變量的狀況,那麼在這種狀況下,咱們確定會想直接 把變量傳過來用,由於是雙向綁定的因此子組件就會修改這個變量,這樣在vue中時會報錯的。雙向綁定

  問題:  作用域

  對於這種問題,咱們就能夠在父組件中用v-model或者是用一個屬性加上sync修飾符並在子組件使用$emit('input',v)或者$emit('x:update',v)來解決,可是這兩個東西到底有什麼區別呢?開發

  結論:  input

  我的認爲二者只是語法上的區別,以此來實現兩個組件之間數據的雙向綁定,sync更加靈活一點,若是是v-model的話在子組件就只能用value來接這個參數了,而sync可隨意it

  延伸:  模板

  官方有哦說道:組件實例的做用域是獨立的,這意味着不能(也不應)在子組件的模板內引用父組件的數據,父組件的數據須要通多prop才能下發到子組件中。變量

相關文章
相關標籤/搜索