vue+elementUI使用v-for循环出多个el-select下拉框,多个下拉框不受影响且反显
vue+elementUI使用v-for拿到循环出多个el-select下拉框,且多个下拉框不受影响<template><div><div v-for="(item, index) in from" :key="item.label"><span>{{ item.label }}</span><!-- arr[index] 每一个值
·
vue+elementUI使用v-for循环出多个el-select下拉框,且多个下拉框不受影响
q群 306671879 群里面有免费资料纯免费,大家一起学习,如果自己有什么好的学习资料也可以一起分享,
一个人的力量终究有限,共同进步。
<template>
<div>
<div v-for="(item, index) in from" :key="item.label">
<span>{{ item.label }}</span>
<!-- arr[index] 每一个值的绑定@change="(val) => chageValue(val,index)"每一项选择的值-->
<el-select
v-model="arr[index]"
placeholder="请选择"
@change="(val) => chageValue(val)"
>
<el-option
v-for="v in item.options"
:key="v.value"
:label="v.label"
:value="v.value"
>
</el-option>
</el-select>
</div>
<el-button @click="btnClickSele">点击</el-button>
</div>
</template>
js代码
data() {
return {
arr: [],
from: [
{
label: "1",
options: [
{
value: "选项1",
label: "1",
},
{
value: "选项11",
label: "11",
},
{
value: "选项111",
label: "111",
},
{
value: "选项1111",
label: "1111",
},
{
value: "选项111111",
label: "1111",
},
],
},
{
label: "2",
options: [
{
value: "选项2",
label: "2",
},
{
value: "选项22",
label: "22",
},
{
value: "选项2222",
label: "222",
},
{
value: "选项222222",
label: "2222",
},
{
value: "选项2222222",
label: "22222",
},
],
},
{
label: "3",
options: [
{
value: "选项3",
label: "3",
},
{
value: "选项33",
label: "33",
},
{
value: "选项333",
label: "333",
},
{
value: "选项3333",
label: "3333",
},
{
value: "选项53333333",
label: "33333",
},
],
},
],
};
},
// 未打乱循序
let arr = [
{ id: "1", label: ["选项111", "选项111111"] },
{ id: "2", label: ["选项22", "选项222222"] },
{ id: "3", label: ["选项3333", "选项53333333"] },
];
arr.map((ele, index) => {
this.arr[index] = ele.label // 反显
});
// 打乱循序 label值得于上面的this.from中的options.value一样
let arr = [
{ id: "3", label: ["选项3333", "选项53333333"] },
{ id: "2", label: ["选项22", "选项222222"] },
{ id: "1", label: ["选项111", "选项111111"] },
];
arr
.sort((a, b) => Number(a.id) - Number(b.id))
.map((item, index) => (this.arr[index] = item.label));
},
methods: {
btnClickSele() {
console.log(this.from);
console.log(this.arr);
},
chageValue(value,index) {
console.log(value,index);
let params = {
id:this.from[index].label,
label:value
}
console.log(params); // 可以打印看一下
},
},
更多推荐
已为社区贡献5条内容
所有评论(0)