您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關怎么在vue中創(chuàng)建一個組件,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據(jù)這篇文章可以有所收獲。
方法一:使用 Vue.extend 來創(chuàng)建全局的Vue組件
實例:
var com1 = Vue.extend({ template: '<h4>這是使用 Vue.extend 創(chuàng)建的組件</h4>' // 通過 template 屬性,指定了組件要展示的HTML結構 })
使用 Vue.component
('組件名稱', 創(chuàng)建的組件對象)來創(chuàng)建vue組件的時候,名稱使用首字母大寫來命名,引用組件時,將大寫的改為小寫字母,兩個單詞之前使用 -
連接;參數(shù)一:一個標簽形式來引入組件的,參數(shù)二: template
就是組件展示的HTML
內容。
<div id="app"> <!-- 如果要使用組件,直接,把組件的名稱,以 HTML 標簽的形式,引入到頁面中,即可 --> <mycom1></mycom1> </div> <script> Vue.component('mycom1', Vue.extend({ template: '<h4>這是使用 Vue.extend 創(chuàng)建的組件</h4>' })) // 創(chuàng)建 Vue 實例,得到 ViewModel var vm = new Vue({ el: '#app', data: {}, }); </script>
得到的結果是:
方法二:直接使用 Vue.component
<body> <div id="app"> <!-- 使用標簽形式,引入自己的組件 --> <mycom2></mycom2> </div> <script> Vue.component('mycom2', { template:`<div> <h4>這是直接使用 Vue.component 創(chuàng)建出來的組件</h4> <span>123</span> </div> ` }) // 創(chuàng)建 Vue 實例,得到 ViewModel var vm = new Vue({ el: '#app', data: {}, methods: {} }); </script> </body>
結果:
方法三:使用Vue.component,在被控制的#app外面,使用template 元素
在被控制的 #app 外面,使用 template 元素,定義組件的HTML模板結構
<body> <div id="app2"> <login></login> <mycom3></mycom3> <login></login> </div> <template id="tmpl"> <div> <h2>這是通過 template 元素,在外部定義的組件結構,這個方式,有代碼的只能提示和高亮</h2> <h5>好用,不錯!</h5> </div> </template> <template id="tmpl2"> <h2>這是私有的 login 組件</h2> </template> <script> Vue.component('mycom3', { template: '#tmpl', }) // 創(chuàng)建 Vue 實例,得到 ViewModel var vm2 = new Vue({ el: '#app2', data: {}, methods: {}, filters: {}, directives: {}, components: { // 定義實例內部私有組件的 login: { template: '#tmpl2' } }, }) </script> </body>
輸出結果:
注意:不論什么方式創(chuàng)建出來的組件,組件的 template 指向的內容,有且只有唯一一個根元素。
看完上述內容,你們對怎么在vue中創(chuàng)建一個組件有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業(yè)資訊頻道,感謝大家的支持。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。