在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當(dāng)前位置:雨林木風(fēng)下載站 > 網(wǎng)頁(yè)設(shè)計(jì)教程 > 詳細(xì)頁(yè)面

Vue2.0中組件的繼承與擴(kuò)展(代碼示例)

Vue2.0中組件的繼承與擴(kuò)展(代碼示例)

更新時(shí)間:2025-12-08 文章作者:未知 信息來(lái)源:網(wǎng)絡(luò) 閱讀次數(shù):

導(dǎo)網(wǎng)頁(yè)的本質(zhì)就是超級(jí)文本標(biāo)記語(yǔ)言,通過(guò)結(jié)合使用其他的Web技術(shù)(如:腳本語(yǔ)言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強(qiáng)大的網(wǎng)頁(yè)。因而,超級(jí)文本標(biāo)記語(yǔ)言是萬(wàn)維網(wǎng)(Web)編程的基礎(chǔ),也就是說(shuō)萬(wàn)維網(wǎng)是建立...
網(wǎng)頁(yè)的本質(zhì)就是超級(jí)文本標(biāo)記語(yǔ)言,通過(guò)結(jié)合使用其他的Web技術(shù)(如:腳本語(yǔ)言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強(qiáng)大的網(wǎng)頁(yè)。因而,超級(jí)文本標(biāo)記語(yǔ)言是萬(wàn)維網(wǎng)(Web)編程的基礎(chǔ),也就是說(shuō)萬(wàn)維網(wǎng)是建立在超文本基礎(chǔ)之上的。超級(jí)文本標(biāo)記語(yǔ)言之所以稱為超文本標(biāo)記語(yǔ)言,是因?yàn)槲谋局邪怂^“超級(jí)鏈接”點(diǎn)。
本篇文章給大家?guī)?lái)的內(nèi)容是關(guān)于Vue2.0中組件的繼承與擴(kuò)展(代碼示例),有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助。

本文將介紹vue2.0中的組件的繼承與擴(kuò)展,主要分享slot、mixins/extends和extend的用法。

一、slot

1.默認(rèn)插槽和匿名插槽

slot用來(lái)獲取組件中的原內(nèi)容,此方式用于父組件向子組件傳遞“標(biāo)簽數(shù)據(jù)”。有的時(shí)候?yàn)椴宀厶峁┠J(rèn)的內(nèi)容是很有用的,例如,一個(gè)<my-hello> 組件可能希望這個(gè)按鈕的默認(rèn)內(nèi)容是“如果沒(méi)有原內(nèi)容,則顯示該內(nèi)容”,但是同時(shí)允許用戶覆寫為別的內(nèi)容。

<body>
  <div id="itany">
    <my-hello>180812</my-hello>
  </div>
<template id="hello">
  <div>
    <h3>welcome to xiamen</h3>
    <slot>如果沒(méi)有原內(nèi)容,則顯示該內(nèi)容</slot>// 默認(rèn)插槽
  </div>
</template>
<script>
  var vm=new Vue({
      el:'#itany',
      components:{
      'my-hello':{
      template:'#hello'
    }
     }
 });    
</script>

795687625-5bbe20ffd96d0_articlex.png

2.具名插槽

有些時(shí)候我們需要多個(gè)插槽,<slot> 元素有一個(gè)特殊的特性:name。這個(gè)特性可以用來(lái)定義額外的插槽:

<div id="itany">
    <my-hello>
      <ul slot="s1">
    <li>aaa</li>
    <li>bbb</li>
    <li>ccc</li>
      </ul>
      <ol slot="s2">
    <li>111</li>
    <li>222</li>
    <li>333</li>
      </ol>
    </my-hello>
</div>
<template id="hello">
    <div>
      <slot name="s2"></slot>
      <h3>welcome to xiamen</h3>
      <slot name="s1"></slot>
    </div>
</template>
<script>
  var vm=new Vue({
    el:'#itany',
    components:{
      'my-hello':{
         template:'#hello'
       }
    }
 });    
</script>

3053502272-5bbe20ffd8f58_articlex.png

二、mixins

1.mixins簡(jiǎn)介

混入 (mixins) 是一種分發(fā) Vue 組件中可復(fù)用功能的非常靈活的方式。混入對(duì)象可以包含任意組件選項(xiàng)。當(dāng)組件使用混入對(duì)象時(shí),所有混入對(duì)象的選項(xiàng)將被混入該組件本身的選項(xiàng)。mixins 選項(xiàng)接受一個(gè)混合對(duì)象的數(shù)組。

2.mixins用途

一般有兩種用途:

1、在你已經(jīng)寫好了構(gòu)造器后,需要增加方法或者臨時(shí)的活動(dòng)時(shí)使用的方法,這時(shí)用混入會(huì)減少源代碼的污染。

2、很多地方都會(huì)用到的公用方法,用混入的方法可以減少代碼量,實(shí)現(xiàn)代碼重用。

例如下面的例子:實(shí)現(xiàn)每次數(shù)據(jù)變化時(shí)都能夠在控制臺(tái)打印出提示:"數(shù)據(jù)發(fā)生變化"

    <h1>Mixins</h1>
    <hr>
    <div id="app">
        <p>num:{{ num }}</p>
        <P>
            <button @click="add">增加數(shù)量<tton>
        </P>
    </div>
    <script type="text/javascript">
        var addLog = { //額外臨時(shí)加入時(shí),用于顯示日志
            updated: function () {
                console.log("數(shù)據(jù)發(fā)生變化,變化成" + this.num + ".");
            }
        }
        Vue.mixin({// 全局注冊(cè)一個(gè)混入,影響注冊(cè)之后所有創(chuàng)建的每個(gè) Vue 實(shí)例
            updated: function () {
                console.log("我是全局的混入")
            }
        })
        var app = new Vue({
            el: '#app',
            data: {
                num: 1
            },
            methods: {
                add: function () {
                    this.num++;
                }
            },
            updated() {
                console.log("我是原生的update")
            },
            mixins: [addLog]//混入
        })

2615240520-5bbe20ffed9c8_articlex.gif

3.mixins的調(diào)用順序

上例說(shuō)明了:從執(zhí)行的先后順序來(lái)說(shuō),混入對(duì)象的鉤子將在組件自身鉤子之前調(diào)用,如果遇到全局混入(Vue.mixin),全局混入的執(zhí)行順序要前于混入和組件里的方法。

三、extends

1.extends用法

extends選項(xiàng)允許聲明擴(kuò)展另一個(gè)組件,而無(wú)需使用 Vue.extend
通過(guò)外部增加對(duì)象的形式,對(duì)構(gòu)造器進(jìn)行擴(kuò)展。它和混入mixins非常的類似。只不過(guò)接收的參數(shù)是簡(jiǎn)單的選項(xiàng)對(duì)象或構(gòu)造函數(shù),所以extends只能單次擴(kuò)展一個(gè)組件。

    <h1>Extends</h1>
    <hr>
    <div id="app">
        num:{{ num }}
        <p>
            <button @click="add">add</button>
        </p>
    </div>
    <script type="text/javascript">
        var bbb = {
            updated() {
                console.log("我是被擴(kuò)展出來(lái)的");
            },
            methods: {
                add: function () {  //跟原生的方法沖突,取原生的方法,這點(diǎn)跟混入一樣
                    console.log('我是被擴(kuò)展出來(lái)的add方法!');
                    this.num++;
                }
            }
        };
        var app = new Vue({
            el: '#app',
            data: {
                num: 1
            },
            methods: {
                add: function () {
                    console.log('我是原生add方法');
                    this.num++;
                }
            },
            updated() {
                console.log("我是擴(kuò)展出來(lái)的");
            },
            extends: bbb// 接收對(duì)象和函數(shù)
        })

2496630468-5bbe20fff14ad_articlex.gif

從上面的例子也可看出,執(zhí)行的先后順序和mixins一樣,另外擴(kuò)展的方法與原生的沖突時(shí),擴(kuò)展的方法不生效,這點(diǎn)跟混入一樣。

2.extends和mixins優(yōu)先級(jí)比較

 var extend={
    data:{extendData:'我是extend的data'},
    created:function(){
      console.log('這是extend的created');
    }
  }
  var mixin={
    data:{mixinData:'我是mixin的data'},
    created:function(){
      console.log('這是mixin的created');
    }
  }
  var vm=new Vue({
    el:'#app',
    data:{mixinData:'我是vue實(shí)例的data'},
    created:function(){
      console.log('這是vue實(shí)例的created');
    },
    methods:{
      getSum:function(){
        console.log('這是vue實(shí)例里面getSum的方法');
      }
    },
    mixins:[mixin],
    extends:extend
  })

2237295524-5bbe20ffd7d96_articlex.png

由此可以得出,相對(duì)于mixins,extends觸發(fā)的優(yōu)先級(jí)更高

四、extend

Vue.extend只是創(chuàng)建一個(gè)構(gòu)造器,它是為了創(chuàng)建可復(fù)用的組件。其主要用來(lái)服務(wù)于Vue.component,用來(lái)生成組件

<div id="itany">
        <hello></hello>
        <my-world></my-world>
    </div>
    <script>
        /**
         * 方式1:先創(chuàng)建組件構(gòu)造器,然后由組件構(gòu)造器創(chuàng)建組件
         */
        //1.使用Vue.extend()創(chuàng)建一個(gè)組件構(gòu)造器
        var MyComponent = Vue.extend({
            template: '<h3>Hello World</h3>'
        });
        //2.使用Vue.component(標(biāo)簽名,組件構(gòu)造器),根據(jù)組件構(gòu)造器來(lái)創(chuàng)建組件
        Vue.component('hello', MyComponent);
        /**
         * 方式2:直接創(chuàng)建組件(推薦)
         */
        // Vue.component('world',{
        Vue.component('my-world', {
            template: '<h1>你好,世界</h1>'
        });
        var vm = new Vue({ //這里的vm也是一個(gè)組件,稱為根組件Root
            el: '#itany',
            data: {}
        });    
    </script>

以上就是Vue2.0中組件的繼承與擴(kuò)展(代碼示例)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 亚洲18在线看污www麻豆| 三年中文高清在线观看第6集| 国产精品美女在线播放| xx欧美撒尿嘘撒尿xx| 日韩欧美在线免费观看视频| 久久久久久久久久久视频| 7777在线视频| 激情视频小说图片| www.男人天堂网| av在线观看地址| 日b视频免费观看| 久久久久久久久久网| 亚洲人成无码网站久久99热国产 | 男女激情无遮挡| 玩弄中年熟妇正在播放| 久久久久久免费看| 色欲av无码一区二区人妻| 波多野结衣之无限发射| 久章草在线视频| 奇米影音第四色| 黄色一级片网址| 国产精品无码免费专区午夜| 久久成人免费观看| 国产一伦一伦一伦| 国产精品igao网网址不卡| 91免费视频黄| 免费看黄在线看| 天堂在线资源视频| 中国女人做爰视频| 红桃av在线播放| 天堂v在线视频| 免费在线a视频| 成人手机视频在线| 三上悠亚久久精品| 亚洲免费黄色录像| 久久av综合网| 亚洲xxx在线观看| 日韩av中文字幕第一页| 天堂在线资源视频| 成年在线观看视频| 亚洲最大成人在线观看| 2018中文字幕第一页| 亚洲色图 在线视频| 国产爆乳无码一区二区麻豆| 人人干人人视频| 日本手机在线视频| 免费观看黄色大片| 黄色aaa级片| 99热自拍偷拍| 成人在线国产视频| 国产精品jizz在线观看老狼| 色诱视频在线观看| 成年人网站免费视频| 欧美美女黄色网| 免费看av软件| 欧美成人乱码一二三四区免费| 免费黄色日本网站| 2018国产在线| 波多野结衣 作品| 两性午夜免费视频| av中文字幕网址| 成年人在线观看视频免费| 乱妇乱女熟妇熟女网站| 91.com在线| 97干在线视频| 久操网在线观看| 日韩五码在线观看| 日韩av新片网| 国产精品999视频| 无码 制服 丝袜 国产 另类| 国产91在线亚洲| 无码熟妇人妻av在线电影| 日韩中文字幕在线不卡| 激情成人开心网| av网站大全免费| 夫妻免费无码v看片| jizzjizzxxxx| 黄色免费网址大全| 在线能看的av网站| 色男人天堂av| 日韩极品视频在线观看| 久久综合久久网| 国产淫片免费看| 国产 porn| 国产成人精品免费看在线播放| 最近免费观看高清韩国日本大全| 久久久成人精品一区二区三区 | 国产男女激情视频| 在线观看国产中文字幕| 操人视频免费看| 免费一级淫片aaa片毛片a级| 免费国产黄色网址| 亚洲最大天堂网| 国产人妻人伦精品| 日本男人操女人| a级网站在线观看| 欧美成人xxxxx| 一级黄色在线播放| 久艹视频在线免费观看| 毛葺葺老太做受视频| 欧美三级午夜理伦三级老人| 免费国产黄色网址| 亚洲制服在线观看| 国产亚洲天堂网| 大陆极品少妇内射aaaaaa| 成人小视频在线看| 男人天堂成人网| wwwwww.色| 久久这里只有精品18| 99视频在线视频| 国产男女免费视频| 美女黄色片网站| 2025韩国理伦片在线观看| 国产精品入口芒果| 中文字幕色网站| 欧美午夜性生活| www在线观看免费| 好色先生视频污| 久久久久久久久久毛片| 日本免费观看网站| 国产97在线 | 亚洲| 人人妻人人澡人人爽精品欧美一区| 日韩毛片在线免费看| 欧美国产激情视频| 黄色激情在线视频| 欧美中日韩在线| 国产911在线观看| 国产又粗又猛大又黄又爽| 欧在线一二三四区| mm1313亚洲国产精品无码试看| 欧美中日韩在线| 久久这里只有精品18| 日本黄大片在线观看| 成人在线观看毛片| 男人天堂手机在线视频| 亚洲国产精品无码观看久久| 日韩一级特黄毛片| 国产欧美日韩小视频| 可以在线看的av网站| 乱妇乱女熟妇熟女网站| 131美女爱做视频| 92看片淫黄大片一级| 性欧美极品xxxx欧美一区二区| 日本新janpanese乱熟| 在线免费观看视频黄| 亚洲欧美偷拍另类| 亚洲自拍偷拍一区二区三区| 中文字幕精品在线播放| 香港三级日本三级a视频| 欧美视频在线观看视频| 成人久久久久久久久| 污污网站免费看| 久久久久久久久影视| 波多野结衣乳巨码无在线| 97公开免费视频| 日本免费在线视频观看| 成人免费视频91| 超碰网在线观看| 17c国产在线| 国产一线二线三线女| 日韩一级片播放| 热这里只有精品| 无罩大乳的熟妇正在播放| 亚洲欧美视频二区| 国产制服91一区二区三区制服| 1024av视频| 99999精品| 人妻内射一区二区在线视频 | 久久最新免费视频| aa在线免费观看| 国产一区一区三区| 国产日韩一区二区在线观看| 午夜大片在线观看| 精品国产一二三四区| 亚洲欧美一区二区三区不卡| 俄罗斯av网站| 中国一级黄色录像| 久久综合久久色| 国产毛片视频网站| 日本黄色播放器| 亚洲老女人av| 红桃av在线播放| 日本人体一区二区| 国产日产欧美一区二区| 蜜臀一区二区三区精品免费视频| 无罩大乳的熟妇正在播放| 搡的我好爽在线观看免费视频| 国产97色在线 | 日韩| www..com日韩| 国产精品国三级国产av| 一区二区三区四区久久| 午夜视频你懂的| 成人中文字幕av| 国产精品乱码久久久久| 丰满少妇被猛烈进入高清播放| 97av中文字幕| 亚洲一区 在线播放| 日本一本在线视频| 亚洲色图偷拍视频| 涩涩网站在线看|