Saya memiliki pandangan dinamis:
<div id="myview">
<div :is="currentComponent"></div>
</div>
dengan contoh Vue terkait:
new Vue ({
data: function () {
return {
currentComponent: 'myComponent',
}
},
}).$mount('#myview');
Ini memungkinkan saya untuk mengubah komponen saya secara dinamis.
Dalam kasus saya, saya memiliki tiga komponen yang berbeda: myComponent
, myComponent1
, dan myComponent2
. Dan saya beralih di antara mereka seperti ini:
Vue.component('myComponent', {
template: "<button @click=\"$parent.currentComponent = 'myComponent1'\"></button>"
}
Sekarang, saya ingin meneruskan properti ke myComponent1
.
Bagaimana saya bisa melewatkan props ini ketika saya mengubah tipe komponen menjadi myComponent1
?
javascript
vue.js
vuejs2
vue-component
Epitouille
sumber
sumber
propName="propValue"
. Apa itu pertanyaanmu?<myComponent1 propName="propValue">
Saya mengubah komponen secara terprogram dengan$parent.currentComponent = componentName
<div :is="currentComponent"></div>
. Di situlah Anda akan menambahkan atribut.myComponent1
ambil alat peraga danmyComponent2
jangan ambil alat peragaJawaban:
Untuk meneruskan props secara dinamis, Anda dapat menambahkan
v-bind
direktif ke komponen dinamis Anda dan meneruskan objek yang berisi nama dan nilai prop Anda:Jadi komponen dinamis Anda akan terlihat seperti ini:
Dan dalam Vue instance Anda,
currentProperties
dapat berubah berdasarkan komponen saat ini:Jadi sekarang, ketika
currentComponent
adamyComponent
, itu akan memilikifoo
properti yang sama dengan'bar'
. Dan jika tidak, tidak ada properti yang akan diteruskan.sumber
<component>(here)</component>
. Apakah itu mungkin?<slot>
untuk setiap komponen yang Anda render secara dinamis. vuejs.org/v2/guide/components-slots.htmlAnda juga dapat melakukannya tanpa properti yang dihitung dan membuat objek menjadi sebaris.
<div v-bind="{ id: someProp, 'other-attr': otherProp }"></div>
Ditampilkan di dokumen di V-Bind - https://vuejs.org/v2/api/#v-bind
sumber
Anda bisa membangunnya seperti ...
sumber
Jika Anda telah mengimpor kode Anda melalui memerlukan
Anda juga dapat mereferensikan komponen melalui properti name jika Anda r komponen telah ditugaskan
sumber