elementUI select,option变化,如果option不存在上次的选项,自动清空上次的选择

select,option变化,如果option不存在上次的选项,自动清空上次的选择

javascript 复制代码
<script src="//unpkg.com/vue@2/dist/vue.js"></script>
<script src="//unpkg.com/element-ui@2.15.14/lib/index.js"></script>
<div id="app">
<template>
  <el-select v-model="value" placeholder="请选择">
    <el-option
      v-for="item in arr"
      :key="item.value"
      :label="item.label"
      :value="item.value">
    </el-option>
  </el-select>
  <el-button @click="fun">fun</el-button>
  <el-button @click="fun2">fun2</el-button>
  <el-button @click="fun3">fun3</el-button>
  <el-button @click="fun4">fun4</el-button>
</template>
</div>

var Main = {
    data() {
      return {
        arr:[],
        options: [{value: '黄金糕',label: '黄金糕'}, {
          value: '双皮奶',label: '双皮奶'}, {
          value: '蚵仔煎',label: '蚵仔煎'}],
        options2: [{value: '黄金糕2',label: '黄金糕2'}, {
          value: '双皮奶2',label: '双皮奶2'}, {
          value: '蚵仔煎2',label: '蚵仔煎2'} ,{
          value: '蚵仔煎',label: '蚵仔煎'}],
        value: ''//
      }
    },
    methods:{
      fun(){
        this.arr= this.options
      },
      fun2(){
        this.arr=this.options2
      },
      fun3(){ this.arr=[]},
      fun4(){ alert(this.value)}
    },
    watch:{
      arr(val){
        let data=val.find(i=>i.value==this.value)
        if(!data)this.value=''
      }
    }
  }
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')
相关推荐
鹏北海5 小时前
micro-app 微前端项目部署指南
前端·nginx·微服务
发现一只大呆瓜5 小时前
虚拟列表:从定高到动态高度的 Vue 3 & React 满分实现
前端·vue.js·react.js
css趣多多5 小时前
add组件增删改的表单处理
java·服务器·前端
证榜样呀5 小时前
2026 大专计算机专业必考证书推荐什么
大数据·前端
蓝帆傲亦5 小时前
前端性能极速优化完全指南:从加载秒开体验到丝滑交互
前端·交互
鱼毓屿御6 小时前
如何给用户添加权限
前端·javascript·vue.js
JustHappy6 小时前
「web extensions🛠️」有关浏览器扩展,开发前你需要知道一些......
前端·javascript·开源
何中应6 小时前
nvm安装使用
前端·node.js·开发工具
Java新手村6 小时前
基于 Vue 3 + Spring Boot 3 的 AI 面试辅助系统:实时语音识别 + 大模型智能回答
vue.js·人工智能·spring boot
雯0609~6 小时前
hiprint:实现项目部署与打印3-vue版本-独立出模板设计与模板打印页面
前端·vue.js·arcgis