欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue props 單項數(shù)據(jù)流實例分享

 更新時間:2020年02月16日 15:09:53   作者:shysun  
在本篇文章里小編給大家分享的是一篇關(guān)于vue props 單項數(shù)據(jù)流實例分享內(nèi)容,需要的朋友們可以參考下。

父組件傳遞動態(tài)值showStoreList,子組件通過props接收,但是如果在子組件中直接使用并修改這個值會報錯;

因為父級的更新會傳遞給子組件,但是反過來則不行;

這種情況下,可以使用computed或watch來獲取props中的值

以上實例不難,下面由腳本之家小編整理的補充內(nèi)容:

Vue2.x通過props傳遞數(shù)據(jù)是單向的了,也就是父組件數(shù)據(jù)變化時會傳遞給子組件,但是反過來不行。

業(yè)務中會經(jīng)常遇到兩種需要改變prop的情況,

一種是父組件傳遞初始值進來,子組件將它作為初始值保存起來,在自己的作用域下可以隨意使用和修改。這種情況可以在組件data內(nèi)再聲明一個數(shù)據(jù),引用父組件的prop,示例代碼如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <script src="./vue.js"></script>
</head>
<body>
  <div id="app">
    <my-component :init-count="1"></my-component>
  </div>
  <script>
    Vue.component('my-component',{
      props:['init-count'],
      template:'<div>{{count}}</div>',
      data:function(){
        return {
          count:this.initCount
        }
      }
    })
    new Vue({
      el:'#app',
    })
  </script>
</body>
</html>

組件中聲明了數(shù)據(jù)count,它在組件初始化時會獲取來自父組件的initCount,之后就與之無關(guān)了,只用維護count,這樣就可以避免直接操作initCount。

另一種情況就是prop作為需要被轉(zhuǎn)變的原始值傳入。這種情況用計算屬性就可以了,示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <script src="./vue.js"></script>
</head>
<body>
  <div id="app">
    <mynew-component :width="100"></mynew-component>
  </div>
  <script>
    Vue.component('mynew-component',{
      props:['width'],
      template:'<div :style="style">組件內(nèi)容</div>',
      computed:{
        style:function(){
          return {
            width:this.width+'px',
            background:'lightgray',
            textAlign:'center'
          }
        }
      }
    })
    new Vue({
      el:'#app',
    })
  </script>
</body>
</html>

注意:

在JavaScript中對象和數(shù)組是引用類型,指向同一個內(nèi)存空間,所以props是對象和數(shù)組時,在子組件內(nèi)改變是會影響父組件的。

//如此解決引用傳遞

1:var newObject = jQuery.extend(true, {}, oldObject);

2:var obj={};

obj=JSON.parse(JSON.stringify(oldObject));

以上就是本次介紹地全部相關(guān)知識點,感謝大家的學習和對腳本之家的支持。

相關(guān)文章

  • vue一直自動換行的問題及解決

    vue一直自動換行的問題及解決

    這篇文章主要介紹了vue一直自動換行的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue-不允許嵌套式的渲染方法

    Vue-不允許嵌套式的渲染方法

    今天小編就為大家分享一篇Vue-不允許嵌套式的渲染方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Vue3+TypeScript+Vite使用require動態(tài)引入圖片等靜態(tài)資源

    Vue3+TypeScript+Vite使用require動態(tài)引入圖片等靜態(tài)資源

    本文主要介紹了Vue3+TypeScript+Vite使用require動態(tài)引入圖片等靜態(tài)資源,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • 淺談vue3中effect與computed的親密關(guān)系

    淺談vue3中effect與computed的親密關(guān)系

    這篇文章主要介紹了淺談vue3中effect與computed的親密關(guān)系,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • 解讀Vue3中keep-alive和動態(tài)組件的實現(xiàn)邏輯

    解讀Vue3中keep-alive和動態(tài)組件的實現(xiàn)邏輯

    這篇文章主要介紹了Vue3中keep-alive和動態(tài)組件的實現(xiàn)邏輯,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue框架搭建之a(chǎn)xios使用教程

    vue框架搭建之a(chǎn)xios使用教程

    本文重點介紹axios如何配合vue搭建項目框架,文章給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-07-07
  • iview在vue-cli3如何按需加載的方法

    iview在vue-cli3如何按需加載的方法

    這篇文章主要介紹了iview在vue-cli3如何按需加載的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • Vue實現(xiàn)內(nèi)部組件輪播切換效果的示例代碼

    Vue實現(xiàn)內(nèi)部組件輪播切換效果的示例代碼

    這篇文章主要介紹了Vue實現(xiàn)內(nèi)部組件輪播切換效果的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • vue2項目中全局封裝axios問題

    vue2項目中全局封裝axios問題

    這篇文章主要介紹了vue2項目中全局封裝axios問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue靜態(tài)配置文件不進行編譯的處理過程(在public中引入js)

    vue靜態(tài)配置文件不進行編譯的處理過程(在public中引入js)

    這篇文章主要介紹了vue靜態(tài)配置文件不進行編譯的處理過程(在public中引入js),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評論