使用VueJs、Cordava和Javascript动态插入组件
使用vuejs和Cordova,我无法动态插入/创建新的v-select组件。使用VueJs、Cordava和Javascript动态插入组件,javascript,cordova,dynamic,Javascript,Cordova,Dynamic,使用vuejs和Cordova,我无法动态插入/创建新的v-select组件。 我的目标是在单击“添加”按钮时复制并插入现有v-select的副本 <v-select :items="exerciceList" v-model="selectedExercice" label="pick an exercise" v-validate="'required'" data-vv-name="select" required> &l
我的目标是在单击“添加”按钮时复制并插入现有v-select的副本
<v-select
:items="exerciceList"
v-model="selectedExercice"
label="pick an exercise"
v-validate="'required'"
data-vv-name="select"
required>
</v-select>
</div>
<div id="selectsContainer"
v-for="(item, idx) in items">
<v-select
id="item.id" <!-- or use idx -->
style="item.style" <!-- or use any string statement -->
...etc
>
</div>
<v-btn flat icon id="btn" v-on:click="newExercice()">
...{
components: [componentName],
data: return {
items: 0,
...
}
methods: {
newExercice: ()=>{
this.items++
}
}
...}
我的页面代码为:
<v-select
:items="exerciceList"
v-model="selectedExercice"
label="pick an exercise"
v-validate="'required'"
data-vv-name="select"
required>
</v-select>
</div>
<div id="selectsContainer"></div>
<v-btn flat icon id="btn" v-on:click="newExercice()">
id为世博会代码的项目:
<v-select
id="exo"
style="display: none;"
:items="exerciceList"
v-model="selectedExercice"
label="Choisissez un exercice"
v-validate="'required'"
data-vv-name="select"
required>
感谢您帮助我改进我的实现。Michael S所说的是正确的,您不想直接操纵DOM,这会导致许多问题。也许最好的解决方案(不管怎样快速简单)是导入额外的v-select组件,然后使用简单列表动态添加它,或者在本例中使用整数增加 如果您想使用它进行更多的定制,您可以创建一个对象,并从中动态添加和删除样式、属性等,与此选项的工作方式相同,但可以将该项转换为一个对象数组。然后,在单击按钮时继续向其添加对象
<v-select
:items="exerciceList"
v-model="selectedExercice"
label="pick an exercise"
v-validate="'required'"
data-vv-name="select"
required>
</v-select>
</div>
<div id="selectsContainer"
v-for="(item, idx) in items">
<v-select
id="item.id" <!-- or use idx -->
style="item.style" <!-- or use any string statement -->
...etc
>
</div>
<v-btn flat icon id="btn" v-on:click="newExercice()">
...{
components: [componentName],
data: return {
items: 0,
...
}
methods: {
newExercice: ()=>{
this.items++
}
}
...}
style=“item.style”
等
...{
组件:[组件名称],
数据:返回{
项目:0,
...
}
方法:{
新练习:()=>{
这是一个项目++
}
}
...}
在这里,操作DOM不是一个好的解决方案。如果您使用一种方法,您应该认为它是VueJS方式。你看过动力学组件了吗?谢谢,我查一下