v-model 封装自己的下拉框组件
{{ selectVal }}
<my-select v-model="selectVal"></my-select>
data() {
return {
selectVal: "c",
};
},
MySelect组件
<template>
<div>
<select :value="value" @change="changeSelect">
<option v-for="item in inputList" :key="item" :value="item">
{{ item }}
</option>
</select>
</div>
</template>
<script>
export default {
props: ["value"],
data() {
return {
inputList: ["a", "b", "c"],
};
},
mounted() {},
methods: {
changeSelect(e) {
this.$emit("input", e.target.value);
},
},
};
</script>
<style lang="scss" scoped></style>