91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue指的是單項數據流還是雙向數據流

發布時間:2021-10-27 17:37:58 來源:億速云 閱讀:174 作者:小新 欄目:web開發

這篇文章給大家分享的是有關vue指的是單項數據流還是雙向數據流的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

vue是單項數據流。雖然vue有雙向綁定“v-model”,但是vue父子組件之間數據傳遞,仍然還是遵循單向數據流的,父組件可以向子組件傳遞props,但是子組件不能修改父組件傳遞來的props,子組件只能通過事件通知父組件進行數據更改。

本教程操作環境:windows7系統、vue2.9.6版,DELL G3電腦。

雙向綁定

簡而言之,雙向綁定就是model的更新會觸發view的更新,view的更新會觸發model的更新,它們的作用是相互的
[圖片上傳失敗...(image-81a06f-1556975918443)]

單向數據流

簡而言之,單向數據流就是model的更新會觸發view的更新,view的更新不會觸發model的更新,它們的作用是單向的

vue指的是單項數據流還是雙向數據流

這不是廢話嗎,誰都知道的

下面就是真正的干貨了,板凳坐好

<ul>
<li>Vue是單向數據流,不是雙向綁定</li>
<li>Vue的雙向綁定不過是語法糖</li>
<li>Object.definePropert是用來做響應式更新的</li>
</ul>

v-model的實現原理

  • 放在組件上

父組件

  <AnalysisSub v-model="phoneInfo" :zip-code.sync="zipCode" /

子組件

<template>
  <div>
    <input
      :value="phoneInfo.phone"
      type="number"
      placeholder="手機號"
      @input="handlePhoneChange"
    />
    <input
      :value="zipCode"
      type="number"
      placeholder="郵編"
      @input="handleZipCodeChange"
    />
  </div></template><script>export default {
  name: "PersonalInfo",
  model: {
    prop: "phoneInfo", // 默認 value
    event: "change" // 默認 input
  },
  props: {
    phoneInfo: Object,
    zipCode: String
  },
  methods: {
    handlePhoneChange(e) {
      this.$emit("change", {
        ...this.phoneInfo,
        phone: e.target.value
      });
    },
    handleZipCodeChange(e) {
      this.$emit("update:zipCode", e.target.value);
    }
  }
};</script>

父組件的寫法等同于

 <AnalysisSub :phone-info="phoneInfo" @change="val => (phoneInfo = val)"
    :zip-code="zipCode"  @update:zipCode="val => (zipCode = val)"/>
  • 放在input元素上

其實上文已經體現了

<input v-model=“phoneInfo.phone”/>
<input :value="PhoneInfo.phone" @input="val => { PhoneInfo.phone = val }"

以上兩句是相等的

TIPS

model 2.2.0+

允許一個自定義組件在使用 v-model 時定制 prop 和 event。默認情況下,一個組件上的 v-model 會把 value 用作 prop 且把 input 用作 event,但是一些輸入類型比如單選框和復選框按鈕可能想使用 value prop 來達到不同的目的。使用 model 選項可以回避這些情況產生的沖突。

.sync修飾符 2.3.0+

在有些情況下,我們可能需要對一個 prop 進行“雙向綁定”。不幸的是,真正的雙向綁定會帶來維護上的問題,因為子組件可以修改父組件,且在父組件和子組件都沒有明顯的改動來源。

感謝各位的閱讀!關于“vue指的是單項數據流還是雙向數據流”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

五莲县| 化州市| 华蓥市| 乌拉特前旗| 抚顺市| 珲春市| 上蔡县| 竹山县| 云霄县| 桦甸市| 甘孜县| 郑州市| 延安市| 诸城市| 商都县| 大埔县| 玛沁县| 巴林左旗| 紫金县| 大埔区| 滁州市| 广宗县| 炎陵县| 华宁县| 南昌县| 双峰县| 龙南县| 巴东县| 中阳县| 如东县| 柳河县| 葫芦岛市| 桂平市| 乡城县| 蒙阴县| 峡江县| 铁岭县| 阿拉善右旗| 杭锦后旗| 衡阳市| 武安市|