您好,登錄后才能下訂單哦!
Vue.js 使用了基于 HTML 的模板語(yǔ)法,允許開(kāi)發(fā)者聲明式地將 DOM 綁定至底層 Vue 實(shí)例的數(shù)據(jù)。所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循規(guī)范的瀏覽器和 HTML 解析器解析。
在我們?cè)絹?lái)越深入Vue時(shí),我們會(huì)發(fā)現(xiàn)我們對(duì)HTML代碼的工程量會(huì)越來(lái)越少,今天我們來(lái)談?wù)刅ue下的 components模板的 初步使用方法與 應(yīng)用
我們先來(lái)簡(jiǎn)單的寫一段components代碼
(局部方法創(chuàng)造模板)
<div id="app"> <haha></haha> </div> /* 這是最簡(jiǎn)單常用的一種創(chuàng)造模板方法,局部方法創(chuàng)造模板 要注意,局部模板 的作用范圍 只在 相對(duì)的vue對(duì)象 范圍內(nèi) 比如 這個(gè)例子, <haha></haha>的范圍 只在 <div id="app"> </div>內(nèi) 因?yàn)?haha 掛載在 vm的components下 而 vm掛載的 對(duì)應(yīng)節(jié)點(diǎn)是 id=app的 div上 */ let vm = new Vue({ el:"#app", data:{ }, components:{ "haha":{ template:"<div>哈哈哈<div>" } } });
(共有模板/全局模板),全局模板 顧名思義 肯定是 放在哪里都能用
<div id="app"> <hehe></hehe> </div> //這里使用Vue.component原型方法來(lái)創(chuàng)造 Vue.component( "hehe",template:"<div>呵呵呵<div>" ); let vm = new Vue({ el:"#app", data:{ }, components:{ //這里則不需要添加,因?yàn)?互不影響 } });
其他方法:
<div id="app"> <xixi></xixi> </div> let xixi={ template:"<div>嘻嘻嘻<div>" } let vm = new Vue({ el : "#app", data{ }, components:{ xixi } });
(模板的繼承),全局模板 顧名思義 肯定是 放在哪里都能用
/* 我們來(lái)講個(gè)最簡(jiǎn)單的 父親,兒子 ,孫子的 例子 要注意以下幾點(diǎn): 1.先實(shí)例化對(duì)象vm 2.造出parent模板,并掛載在 vm的 conponents 下 3.造出 son 模板 并 掛載 在 父級(jí) parent 的conponents下,并在 父級(jí)template屬性中 包裹住自己的 模板名標(biāo)簽 ;同理 造出孫子標(biāo)簽 4.在HTML節(jié)點(diǎn)中添加 目標(biāo) 根節(jié)點(diǎn) (節(jié)點(diǎn)的順序一定要書(shū)寫正確) */ <div id="app"> <parent></parent> </div> //創(chuàng)建 孫子 模板 let grendson = { template:"<div>孫子</div>" } //創(chuàng)建 兒子 模板 let son= { template:"<son>兒子<grendson >孫子</grendson ></son>" components:{ grendson } } //創(chuàng)建 父親 模板 let parent = { template:"<div>父親<son></son></div>" components:{ son } } //實(shí)例化vm對(duì)象 let vm = new Vue({ el:"#app", data:{ }, components:{ parent } });
總結(jié)
以上所述是小編給大家介紹的Vue下的components模板使用及應(yīng)用,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)億速云網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。