vue基礎篇 vue元件《2》

2022-01-29 22:52:29 字數 836 閱讀 1679

我們通過vue的component方法來定義乙個全域性元件。

定義好的元件,可以任意復用多次:

你會發現每個元件互不干擾,都有自己的count值。怎麼實現的?

當我們定義這個元件時,它的data 並不是像這樣直接提供乙個物件:

data:

取而代之的是,乙個元件的 data 選項必須是乙個函式,因此每個例項可以維護乙份被返回物件的獨立的拷貝:

data: function

() }

如果 vue 沒有這條規則,點選乙個按鈕就會影響到其它所有例項!

一旦全域性註冊,就意味著即便以後你不再使用這個元件,它依然會隨著vue的載入而載入。

因此,對於一些並不頻繁使用的元件,我們會採用區域性註冊。

我們先在外部定義乙個物件,結構與建立元件時傳遞的第二個引數一致:

const counter =} 次,我記住了.',

data()

}};

然後在vue中使用它:

vue(

})效果與剛才的全域性註冊是類似的,不同的是,這個counter元件只能在當前的vue例項中使用 

比如我們有乙個子元件:

vue.component("introduce",)

父元件使用子元件,同時傳遞title屬性:

我們定義乙個子元件:

const mylist =

}}

我們在父元件中使用它:

vue(,

data:,,,

]}

})來看這樣的乙個案例:

VUE之元件基礎篇

任何乙個頁面我們都可以看做成無數個元件的構成,但是元件只能有乙個根元素,也就是說我們需要將乙個大的div把它整個包起來,元件化的方式可以讓很多 進行復用,例如類似的表單註冊乙個元件後,只需要將元件名作為乙個標籤使用即可達到想用的效果。可以看出,註冊元件時傳入的配置和建立vue例項差不多,但也有不同,...

Vue元件基礎

new vue 就可以認為是乙個大元件,但多個例項這樣太low了,vue為我們提供了component。1.全域性註冊的元件 要註冊乙個全域性元件,你可以使用vue.component tagname,options 例如 註冊 vue.component my component 建立根例項 va...

Vue元件基礎

vue.component button counter template you clicked me times.這裡的data必須是乙個function,不能是物件。因為如果是物件,多個元件引用的是相同的data。如果是function,那麼每次返回的都是不同的data物件,這樣元件之間引用的...