中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Vue入門:todolist實例帶你入門全局組件和局部組件

在理解入門全局組件和局部組件之前,我們有必要了解什么是“組件化”的概念。

十多年的長海網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整長海建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“長海網(wǎng)站設(shè)計”,“長海網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。

組件化可以理解為頁面的一個組件或者一個部分,例如下圖,紅框部分可以劃分成一個組件,我們只需要寫好一個組件,然后循環(huán)數(shù)據(jù)即可。這個組件可能在在首頁、列表頁等任何地方使用,并不僅僅局限于當(dāng)前頁面。

我們?nèi)匀灰宰詈唵蔚膖odolist入門Vue的全局組件和局部組件。我們把<li></li>拿出來作為一個組件,那么我們分別看看全局組件和局部組件分別如何實現(xiàn)。

全局組件

<div id="root">
        <div>
            <input v-model="inputValue" />
            <button @click="handleSubmit">提交</button>
        </div>
        <ul>

            <todo-item v-bind:content="item" v-for="item in list"></todo-item>
        </ul>
    </div>

    <script>
        Vue.component("TodoItem",{
            props:['content'],
            template:"<li>{{content}}</li>"
        })


        new Vue({
            el:"#root", 
            data:{
                inputValue:'',
                list:[]
            },
            methods:{
                handleSubmit:function(){
                    this.list.push(this.inputValue)
                    this.inputValue = ''  //每次提交后清空
                }
            }
        })
    </script>

我們使用Vue.component()來定義一個全局組件,那么這個組件在當(dāng)前頁面均可使用,而不僅僅是id="root"中。

Vue.component("TodoItem",{
            props:['content'],
            template:"<li>{{content}}</li>"
        })

TodoItem是組件名稱,在html中<todo-item></todo-item>使用

props是接收參數(shù)

template定義組件樣式,或者通俗說模板

同時還需要注意這里有一個父組件向子組件傳值:

todo-item v-bind:content="item" v-for="item in list"></todo-item>

我們來分析,list是輸入父組件的,todo-item屬于子組件,list中循環(huán)的數(shù)據(jù)item需要傳遞給全局組件,則用v-bind:content="item"傳遞,其中content就是子組件接收的數(shù)據(jù),那么子組件定義接收props:['content']后,就可以template:"<li>{{content}}</li>"用content顯示數(shù)據(jù)了。

局部組件

同樣的效果,我們使用局部組件來試試。

<div id="root">
        <div>
            <input v-model="inputValue" />
            <button @click="handleSubmit">提交</button>
        </div>
        <ul>
            <todo-item v-bind:content="item" v-for="item in list"></todo-item>
        </ul>
    </div>

    <script>

        var TodoItem={
            props:['content'],
            template:"<li>{{content}}</li>"
        }

        new Vue({
            el:"#root", 
            data:{
                inputValue:'',
                list:[]
            },
            components:{
                'TodoItem':TodoItem
            },
            methods:{
                handleSubmit:function(){
                    this.list.push(this.inputValue)
                    this.inputValue = ''  //每次提交后清空
                }
            }
        })
    </script>

和全局組件不同的是,我們通過var TodoItem={}定義局部組件,定義后還要在new Vue中進行聲明

components:{
   'TodoItem':TodoItem
},

那么局部組件僅僅在id="root"中使用。

好了,

新聞名稱:Vue入門:todolist實例帶你入門全局組件和局部組件
分享地址:http://www.rwnh.cn/article2/cpgsic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機、網(wǎng)站導(dǎo)航App開發(fā)、小程序開發(fā)、網(wǎng)站制作、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
克山县| 岳西县| 威远县| 内黄县| 通江县| 措美县| 宝山区| 上蔡县| 徐汇区| 岗巴县| 内乡县| 曲阜市| 那曲县| 徐州市| 呼图壁县| 光泽县| 安泽县| 唐海县| 乌拉特中旗| 古浪县| 花垣县| 峡江县| 钟祥市| 阿坝| 南漳县| 墨脱县| 大化| 阿荣旗| 龙陵县| 肃南| 本溪市| 晋宁县| 临泽县| 华池县| 新营市| 灵武市| 宜良县| 靖江市| 贵州省| 肥东县| 明水县|