Vue のグローバル コンポーネントとローカル コンポーネントを理解する方法

清浅
リリース: 2019-04-19 10:23:17
オリジナル
6541 人が閲覧しました

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 に格納しますたとえば、ローカルに登録したいコンポーネントを含むコンポーネント属性を追加できます。このプロパティはオブジェクトである必要があり、タグ名と構成オブジェクトのキーと値のペアが含まれている必要があります。

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 のグローバル コンポーネントとローカル コンポーネントを理解する方法テンプレート内でタグを 2 回使用したにもかかわらず、連絡先コンポーネントがレンダリングされたのは 1 回だけです。

これはローカル コンポーネントとして登録したため、最初の Vue インスタンスに表示されますが、2 番目の Vue インスタンスではマークアップをどう処理するかがわかりません。ブラウザのコンソールを確認すると、コンポーネントが登録されていないというエラーがブラウザから報告されます

Vue のグローバル コンポーネントとローカル コンポーネントを理解する方法 したがって、グローバル コンポーネントを登録するには、Vue.component メソッドを使用してください。ローカル コンポーネントの場合は、Vue インスタンスまたは他のコンポーネントでコンポーネント プロパティを使用する必要があります。

要約: 以上がこの記事の全内容です。皆様のお役に立てれば幸いです。

以上がVue のグローバル コンポーネントとローカル コンポーネントを理解する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート