最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue中組件之間數(shù)據(jù)的傳遞的示例代碼

 更新時(shí)間:2017年09月08日 14:33:48   作者:Always明媚  
本篇文章主要介紹了Vue中組件數(shù)據(jù)的傳遞的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

Vue中組件的作用域是隔離的,父組件中的數(shù)值子組件看不到!也就是說(shuō),用angular作比喻,組件的scope天生是scope:()的!
如果父組件需要往子組件中傳數(shù)據(jù),此時(shí)應(yīng)該使用標(biāo)簽屬性:

<div id="app">
   <my-compo c="886"></my-compo>
</div>

子組件中,用props聲明這個(gè)值即可。并且在template里面可以直接使用{{c}}來(lái)獲得這個(gè)屬性,而不需要寫為{{this.props.c}}

import Vue from "vue";

const MyCompo = Vue.extend({
  template : `
    <div>
      <h1>我是MyCompo組件,我的a值是{{a}}</h1>
      <h1>子組件c:{{c}}</h1>
      <input type="button" value="+++" v-on:click="add"/>
    </div>
  `,
  props : ["c"],
  data : function(){
    return {
      a : 1, 
      b : 2
    }
  },
  methods : {
    add : function(){
      this.a ++;
    }
  }
});

export default MyCompo;

如果父組件中要傳一個(gè)動(dòng)態(tài)的值(就是父組件的data,不是死數(shù)),此時(shí)要用v-bind:來(lái)傳遞。
v-bind指令表示動(dòng)態(tài)屬性。

<div id="app">
   <my-compo v-bind:c="c"></my-compo>
</div>

此時(shí)我們研究,子組件改變了這個(gè)值,父組件的值變不變。答:默認(rèn)情況下不變!

<my-compo v-bind:c="c"></my-compo>

import Vue from "vue";

const MyCompo = Vue.extend({
  template : `
    <div>
      <h1>我是MyCompo組件,我的a值是{{a}},我的c值是:{{c}}</h1>
      <input type="button" value="+++" v-on:click="add"/>

    </div>
  `,
  props : ["c"],
  methods : {
    add : function(){
      this.c ++;
    }
  }
});

export default MyCompo;

子組件的c值變化了,但是外面不變!

也就是說(shuō),默認(rèn)情況下,父組件中的屬性值如果傳給兒子,子組件改變這個(gè)值,僅僅改變子組件中的值,父組件中的值不變。

如果非要讓子組件能夠改變父組件中的值,要加sync修飾符:

<my-compo v-bind:c.sync="c"></my-compo>

上面的c屬性是一個(gè)基本類型值常數(shù)3。此時(shí)我們?cè)囋囈妙愋椭怠?br />

父組件中增加d屬性,值是json。

import Vue from "vue";
import MyCompo from "./components/MyCompo.js";

new Vue({
  el : "#app",
  data : {
    c : 333,
    d : {
      v : 8888
    }
  },
  components : {
    "my-compo" : MyCompo
  }
});

傳給子組件:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Vue學(xué)習(xí)</title>
</head>
<body>
  <div id="app">
    <h1>我是父親,我的c: {{c}} ,我的d:{{d | json}}</h1>
     <my-compo v-bind:c.sync="c" v-bind:d="d"></my-compo>
  </div>

  <script type="text/javascript" src="public/bundle.js"></script>
</body>
</html>

子組件改變d的時(shí)候,父親也變了!??!雖然我們沒(méi)加.sync。

總結(jié):

Vue中基本類型值默認(rèn)單向傳遞,雙向加sync。

引用類型值,默認(rèn)雙向傳遞。

小tip,v-bind的縮寫語(yǔ)法就是冒號(hào)。

屬性可以驗(yàn)證類型、必填等等。

props : {
    "c" : null,
    "d" : null,
    "e" : {
      type : Number,
      required : true
    }
},

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Vue路由鉤子及應(yīng)用場(chǎng)景(小結(jié))

    詳解Vue路由鉤子及應(yīng)用場(chǎng)景(小結(jié))

    本篇文章主要介紹了詳解Vue路由鉤子及應(yīng)用場(chǎng)景(小結(jié)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • Vue自定義實(shí)現(xiàn)一個(gè)消息通知組件

    Vue自定義實(shí)現(xiàn)一個(gè)消息通知組件

    這篇文章主要為大家詳細(xì)介紹了如何利用Vue自定義實(shí)現(xiàn)一個(gè)消息通知組件,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下
    2024-03-03
  • 在 Vue 3 中設(shè)置 `@` 指向根目錄的幾種常見(jiàn)方法匯總

    在 Vue 3 中設(shè)置 `@` 指向根目錄的幾種常見(jiàn)方法匯總

    在 Vue 3 項(xiàng)目開(kāi)發(fā)中,為了方便管理和引用文件路徑,設(shè)置 @ 指向根目錄是一項(xiàng)常見(jiàn)的需求,下面給大家分享在Vue3中設(shè)置 `@` 指向根目錄的方法匯總,感興趣的朋友一起看看吧
    2024-06-06
  • Axios在vue項(xiàng)目中的封裝步驟

    Axios在vue項(xiàng)目中的封裝步驟

    Axios?是一個(gè)基于?promise?的網(wǎng)絡(luò)請(qǐng)求庫(kù),可以用于瀏覽器和?node.js,是一個(gè)第三方插件,第三方異步請(qǐng)求工具庫(kù),這篇文章主要介紹了Axios在vue項(xiàng)目中的封裝方法,需要的朋友可以參考下
    2022-10-10
  • vue.js中實(shí)現(xiàn)登錄控制的方法示例

    vue.js中實(shí)現(xiàn)登錄控制的方法示例

    這篇文章主要介紹了vue.js中實(shí)現(xiàn)登錄控制的方法,結(jié)合實(shí)例形式分析 vue.js操作登陸頁(yè)面流程控制相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2018-04-04
  • iview在vue-cli3如何按需加載的方法

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

    這篇文章主要介紹了iview在vue-cli3如何按需加載的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • vue計(jì)算屬性無(wú)法監(jiān)聽(tīng)到數(shù)組內(nèi)部變化的解決方案

    vue計(jì)算屬性無(wú)法監(jiān)聽(tīng)到數(shù)組內(nèi)部變化的解決方案

    今天小編就為大家分享一篇vue計(jì)算屬性無(wú)法監(jiān)聽(tīng)到數(shù)組內(nèi)部變化的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • Vue中原生template標(biāo)簽失效如何解決

    Vue中原生template標(biāo)簽失效如何解決

    這篇文章主要介紹了Vue中原生template標(biāo)簽失效如何解決,找了整一天也沒(méi)找著這事件為什么觸發(fā)不了,第二天意識(shí)到原生代碼里的template可能有問(wèn)題,在原生環(huán)境中template標(biāo)簽內(nèi)部的東西是不會(huì)渲染出來(lái)的,雖然解析器在加載頁(yè)面的時(shí)候確實(shí)會(huì)處理這部分代碼片段
    2023-02-02
  • vue項(xiàng)目實(shí)現(xiàn)圖片懶加載的簡(jiǎn)單步驟

    vue項(xiàng)目實(shí)現(xiàn)圖片懶加載的簡(jiǎn)單步驟

    懶加載的好處在于減少服務(wù)器的壓力,在網(wǎng)絡(luò)比較慢的情況下,可以提前給這張圖片添加一個(gè)占位圖片,提高用戶的體驗(yàn),這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目實(shí)現(xiàn)圖片懶加載的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • echarts設(shè)置tootip輪播切換展示(vue3搭配vue-echarts粘貼即用)

    echarts設(shè)置tootip輪播切換展示(vue3搭配vue-echarts粘貼即用)

    這篇文章主要為大家介紹了echarts設(shè)置tootip輪播切換展示效果,vue3搭配vue-echarts粘貼即用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2023-10-10

最新評(píng)論

洮南市| 扶沟县| 蒲江县| 仙桃市| 太和县| 祁门县| 荆门市| 新化县| 滦平县| 玉树县| 辽中县| 夏河县| 综艺| 松溪县| 涡阳县| 肃北| 商南县| 乌海市| 永平县| 边坝县| 高台县| 绥化市| 通河县| 武邑县| 新野县| 淄博市| 和田县| 神木县| 巨野县| 哈尔滨市| 姜堰市| 滦平县| 宝丰县| 攀枝花市| 安泽县| 永安市| 昌邑市| 山东省| 镇康县| 曲靖市| 从江县|