component: 'Select', componentProps:{ options: projectNameList},怎么样才能选择某个选项,在一个Input中输出选项的value
时间: 2024-03-10 18:45:20 浏览: 82
用来把选择项的值放到INPUT中
要实现在 `Select` 中选择某个选项,在 `Input` 中输出选项的 `value`,可以通过 `Select` 组件的 `v-model` 以及 `Input` 的 `v-model` 的双向数据绑定来实现。
具体的实现步骤如下:
1. 在 `data` 中定义一个 `selectedProjectName` 变量用于存储选中的项目名称,以及一个 `selectedProjectValue` 变量用于存储选中的项目的 `value` 值。
2. 在 `Select` 组件中,将 `v-model` 绑定到 `selectedProjectName` 变量上,并将 `options` 绑定到 `projectNameList` 数组上。
3. 在 `Input` 组件中,将 `v-model` 绑定到 `selectedProjectValue` 变量上。
4. 在 `watch` 中监听 `selectedProjectName` 变量的变化,在变量发生变化时,更新 `selectedProjectValue` 变量的值为选中项目的 `value` 值。
下面是示例代码:
```
<template>
<div>
<el-select v-model="selectedProjectName" :options="projectNameList"></el-select>
<el-input v-model="selectedProjectValue"></el-input>
</div>
</template>
<script>
export default {
data() {
return {
selectedProjectName: '',
selectedProjectValue: '',
projectNameList: [
{ label: '项目1', value: 'value1' },
{ label: '项目2', value: 'value2' },
{ label: '项目3', value: 'value3' }
]
}
},
watch: {
selectedProjectName(newVal) {
const selectedProject = this.projectNameList.find(project => project.label === newVal)
this.selectedProjectValue = selectedProject ? selectedProject.value : ''
}
}
}
</script>
```
在这个示例中,当 `Select` 组件的选中值发生变化时,会触发 `watch` 中的 `selectedProjectName` 监听函数,这个函数会根据选中的项目名称在 `projectNameList` 数组中找到对应的项目,然后将其 `value` 值赋值给 `selectedProjectValue` 变量,从而实现在 `Input` 中输出选项的 `value` 值的功能。
阅读全文