首頁 > web前端 > js教程 > 主體

如何理解vue中的全域元件和局部元件

清浅
發布: 2019-04-19 10:23:17
原創
6509 人瀏覽過

vue中的全域元件指的是可以在應用程式中的任何位置使用的元件,而局部元件指的是未在全域元件中註冊的元件,因此只能使用於局部。

在Vue中元件的出現是為了分割Vue實例的程式碼量,讓我們以不同的元件來劃分不同的功能模組。在程式碼中我們需要何種功能就去呼叫對應的元件就可以了。接下來要介紹的是全域組件和局部組件的差別,具有一定的參考作用,希望對大家有幫助。

如何理解vue中的全域元件和局部元件

【推薦教學:Vue教學

#全域元件指的是可以在應用程式中的任何位置使用的元件,包括在其他元件中

局部元件指的是未在全域元件中註冊的元件,因此只能在註冊它的元件上使用

範例:

<div id="app">
	<contact-us></contact-us>
</div>
登入後複製
Vue.component(&#39;contact-us&#39;, {	data: function() {		
return {			
email: &#39;info@mycompany.com&#39;
		};
	},
	template: `
		<div>
			<h1>Contact Us</h1>
			<p>Please send an e-mail to: {{ email }}</p>
		</div>
	`});new Vue({	el: &#39;#app&#39;,});
登入後複製

上述程式碼的元件其實是一個全域元件,因為我們在全域Vue物件上使用元件方法去註冊它。這樣就意味著我們可以隨意的使用它。

如何將全域元件設定成局部元件

先將元件物件儲存在變數中

var contactUs = {	data: function() {		
return {			
email: &#39;info@mycompany.com&#39;
		};
	},
	template: `
		<div>
			<h1>Contact Us</h1>
			<p>Please send an e-mail to: {{ email }}</p>
		</div>
	`};
登入後複製

然後在Vue實例中,我們可以新增一個components屬性,其中包含我們想要局部註冊的元件。此屬性應該是一個對象,並包含標記名稱和配置對象的鍵值對。

new Vue({	
el: &#39;#app&#39;,	
components: {		
&#39;contact-us&#39;: contactUs
	}});
登入後複製

請注意,在此範例中,已將components屬性新增至Vue實例,但也可以將其新增至另一個元件。

執行程式碼後會看到該元件已經正常運作了。但是為了證明該元件是局部的而不是全域的將添加另一個Vue實例並更改現有實例的選擇器。

new Vue({	
el: &#39;#app1&#39;,	
components: {		
&#39;contact-us&#39;: contactUs
}});new Vue({	el: &#39;#app2&#39;,});
登入後複製
<div id="app1">
	<contact-us></contact-us>
</div>
<div id="app2">
	<contact-us></contact-us>
</div>
登入後複製

如何理解vue中的全域元件和局部元件

現在我們只看到一次呈現的聯絡人元件,即使我們在模板中使用了兩個標籤。

它出現在第一個Vue實例中,因為我們已將其註冊為局部元件,但第二個Vue實例不知道如何處理標記。查看瀏覽器的控制台,瀏覽器報錯說未註冊該元件

如何理解vue中的全域元件和局部元件

因此,要註冊全域元件,請使用Vue.component方法,對於局部元件,應使用Vue實例或其他元件中的components屬性。

總結:以上就是這篇文章的全部內容了,希望對大家有幫助。

以上是如何理解vue中的全域元件和局部元件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!