今天就跟大家聊聊有關怎么在vue中創建一個組件,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
方法一:使用 Vue.extend 來創建全局的Vue組件
實例:
var com1 = Vue.extend({
template: '<h4>這是使用 Vue.extend 創建的組件</h4>' // 通過 template 屬性,指定了組件要展示的HTML結構
})使用 Vue.component('組件名稱', 創建的組件對象)來創建vue組件的時候,名稱使用首字母大寫來命名,引用組件時,將大寫的改為小寫字母,兩個單詞之前使用 - 連接;參數一:一個標簽形式來引入組件的,參數二: template就是組件展示的HTML內容。
<div id="app">
<!-- 如果要使用組件,直接,把組件的名稱,以 HTML 標簽的形式,引入到頁面中,即可 -->
<mycom1></mycom1>
</div>
<script>
Vue.component('mycom1', Vue.extend({
template: '<h4>這是使用 Vue.extend 創建的組件</h4>'
}))
// 創建 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 創建出來的組件</h4>
<span>123</span>
</div> `
})
// 創建 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',
})
// 創建 Vue 實例,得到 ViewModel
var vm2 = new Vue({
el: '#app2',
data: {},
methods: {},
filters: {},
directives: {},
components: { // 定義實例內部私有組件的
login: {
template: '#tmpl2'
}
},
})
</script>
</body>輸出結果:

注意:不論什么方式創建出來的組件,組件的 template 指向的內容,有且只有唯一一個根元素。
看完上述內容,你們對怎么在vue中創建一個組件有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。