Vueコンポーネントの作成と送信の方法
葃葃のコンポーネントを作る3つの方法
ヽoo!ツ
+ Vue.exted関数はコンポーネントのコンストラクタを返します。中にはパラメータが含まれています。パラメータはオブジェクトです。オブジェクトの中にはいくつかの構成項目があります。
+Vue.co mponent()関数はVue.exted()の返したコンストラクタを利用してコンポーネントを作成する例を示しています。二つのパラメータがあります。
パラメータ1:コンポーネント名、パラメータ2:コンポーネントコンストラクタ
注意:
テンプレートtemplateにはルートのみがあります。
創立した名前はラクダの峰で命名したら、使う時は「-」をつけます。例えば、コンポーネント名indexA-->index-a;
シシシシサイ第二種:
+ Vue.co mponent('indexB'、{テンプレート})
シシシシシシ第三種:
+ テンプレート作成により、Vue管轄範囲外にテンプレートを定義します。
シシシシシサイのまとめ:
+ まずテンプレートを作って、コンポーネントを作成します。
萼菵モジュールでの使用指令:
+ Vue.com mponent()には、templateテンプレートがあり、data()関数があり、methods()メソッドがあります。
+注意:data()は関数でなければなりません。属性定義は使えません。関数の中からreturnはオブジェクトから出ます。
萼親ユニットをサブアセンブリに送る方法
*親コンポーネントとサブコンポーネントを先に作成します。
*親コンポーネントのテンプレートのson、サブアセンブリラベルにバインドされています。属性=親コンポーネントが渡すべきデータです。
* サブコンポーネントのson{}にあります。 プロpsを使用して、親コンポーネントから渡されたデータを受信する。
* プロpsの後に1つの配列があり、配列中は1つの文字列であり、これらの文字列は属性として使用できます。すなわち、props:''属性名'です。
* コードは以下の通りです
*
*親コンポーネントとサブコンポーネントを先に作成します。
*サブアセンブリmethodsメソッドにthis.$emit()を使用して、
* この方法には二つのパラメータがあります。パラメータ1:イベント名、パラメータ2:転送するデータを親コンポーネントと交換する必要があります。
*親コンポーネントテンプレートのsonタグにメソッド名の転送を使用します。
つまり、@
コードは以下の通りです
* 兄弟を作る時に、父のコンポーネントを作って、サブコンポーネントの中でsonコンポーネントとdauhtterコンポーネントを作ります。
* 次はsonコンポーネントとdaughtterコンポーネントの間で値を伝えます。
* dau--son传値
*dauでは、まずイベントバスを通じてイベント名と転送すべきデータを送信する。つまり、eventbus.$emit('イベント名'、'データ')
* イベントバス:
* $on()は二つのパラメータがあります。パラメータ1:イベント名です。パラメータ2:関数、関数のデフォルト値は転送されたデータ*コードです。
*
以上は小编が皆さんに绍介したVueコンポーネントの创建と伝値の方法です。皆さんに助けてほしいです。もし何か疑问がありましたら、メッセージをください。小编はすぐに皆さんに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。
ヽoo!ツ
+ Vue.exted関数はコンポーネントのコンストラクタを返します。中にはパラメータが含まれています。パラメータはオブジェクトです。オブジェクトの中にはいくつかの構成項目があります。
+Vue.co mponent()関数はVue.exted()の返したコンストラクタを利用してコンポーネントを作成する例を示しています。二つのパラメータがあります。
パラメータ1:コンポーネント名、パラメータ2:コンポーネントコンストラクタ
注意:
テンプレートtemplateにはルートのみがあります。
創立した名前はラクダの峰で命名したら、使う時は「-」をつけます。例えば、コンポーネント名indexA-->index-a;
シシシシサイ第二種:
+ Vue.co mponent('indexB'、{テンプレート})
シシシシシシ第三種:
+ テンプレート作成により、Vue管轄範囲外にテンプレートを定義します。
シシシシシサイのまとめ:
+ まずテンプレートを作って、コンポーネントを作成します。
萼菵モジュールでの使用指令:
+ Vue.com mponent()には、templateテンプレートがあり、data()関数があり、methods()メソッドがあります。
+注意:data()は関数でなければなりません。属性定義は使えません。関数の中からreturnはオブジェクトから出ます。
萼親ユニットをサブアセンブリに送る方法
*親コンポーネントとサブコンポーネントを先に作成します。
*親コンポーネントのテンプレートのson、サブアセンブリラベルにバインドされています。属性=親コンポーネントが渡すべきデータです。
* サブコンポーネントのson{}にあります。 プロpsを使用して、親コンポーネントから渡されたデータを受信する。
* プロpsの後に1つの配列があり、配列中は1つの文字列であり、これらの文字列は属性として使用できます。すなわち、props:''属性名'です。
* コードは以下の通りです
*
Vue.component('father',{
template:'<div>....<son :myName="mySonName"></son></div>',
data(){
return{
mySonName:' '
}
},
//
components:{
son:{
props:['myName'],
template:'...{{myName}}'
}
}
})
## サブコンポーネントの親コンポーネントに値を送る方法*親コンポーネントとサブコンポーネントを先に作成します。
*サブアセンブリmethodsメソッドにthis.$emit()を使用して、
* この方法には二つのパラメータがあります。パラメータ1:イベント名、パラメータ2:転送するデータを親コンポーネントと交換する必要があります。
*親コンポーネントテンプレートのsonタグにメソッド名の転送を使用します。
つまり、@
tellFatherMyname = "getMySonName";
*親コンポーネントのmethods方法でdataパラメータを入力し、このdata=サブコンポーネントから渡されたデータをmySonName = data;*
に伝える。コードは以下の通りです
<div id="app">
<father></father>
</div>
<script>
Vue.component('father',{
template:`<div>
<p> {{mySonName}}</p>
<son @tellFatherMyname="getMySonName"></son>
</div>`,
data(){
return {
mySonName:'???'
}
},
methods:{
getMySonName(data){
console.log(data);
this.mySonName = data;
}
},
components: {
son:{
data(){
return {
myName :' '
}
},
template:`
<button @click = "emitMyname"> {{myName}}
</button>`,
// methods this.$emit() ;
//$emit() 2 ; 1: , 2: ;
:this.name
methods:{
emitMyname(){
this.$emit('tellFatherMyname',this.myName)
}
}
}
}
})
var vm = new Vue({
el:'#app',
data:{
}
})
</script>
萼菗兄弟セットの作成と伝値:* 兄弟を作る時に、父のコンポーネントを作って、サブコンポーネントの中でsonコンポーネントとdauhtterコンポーネントを作ります。
* 次はsonコンポーネントとdaughtterコンポーネントの間で値を伝えます。
* dau--son传値
*dauでは、まずイベントバスを通じてイベント名と転送すべきデータを送信する。つまり、eventbus.$emit('イベント名'、'データ')
* イベントバス:
var eventbus = new Vue();
*sonではまずフック関数を書き、eventbus.$on('イベント名',data=>{}を通して傍受し、兄弟ノードから送信されたイベントを受信する* $on()は二つのパラメータがあります。パラメータ1:イベント名です。パラメータ2:関数、関数のデフォルト値は転送されたデータ*コードです。
*
<div id="app">
<!-- -->
<father></father>
</div>
<script>
// vue ,
var eventbus = new Vue();
Vue.component('father',{
//
template:`<div>
<son></son>
<daughter></daughter>
</div>`,
components: {
son:{
data(){
return {
mySisterName:'???'
}
},
//
template:'<p> {{mySisterName}}</p>',
//
// eventbus.$on(' ',data)
mounted(){
eventbus.$on('tellBroMyName',data=>{
this.mySisterName = data;
})
}
},
daughter:{
data(){
return {
myName:' '
}
},
template:'<button @click="emitMyName"> {{myName}}</button>',
methods:{
// ,
emitMyName(){
eventbus.$emit('tellBroMyName',this.myName)
}
}
}
}
})
var vm = new Vue({
el:'#app',
data:{
}
})
</script>
締め括りをつける以上は小编が皆さんに绍介したVueコンポーネントの创建と伝値の方法です。皆さんに助けてほしいです。もし何か疑问がありましたら、メッセージをください。小编はすぐに皆さんに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。