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')
相关推荐
仿生狮子2 小时前
OpenAI 攻下千禧年难题之后,开发者似乎无动于衷
前端·数学·vibecoding
Lvan的前端笔记5 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
三天不学习6 小时前
Egg.js 4 突然爆火,原因是否归结于AI 原生落地需求爆发?
前端·javascript·全栈·egg.js
xcs194056 小时前
前端 vue 的前端页面debugger 进不去
前端·javascript·vue.js
明月_清风7 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
Csvn8 小时前
框架性能优化
前端
雪芽蓝域zzs10 小时前
第 5 节:Marker 点击弹出 InfoWindow 信息窗口
vue.js
回眸&啤酒鸭10 小时前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
用户693717500138410 小时前
2026,程序员的时代拐点到了
android·前端·后端
大龄秃头程序员10 小时前
一次 iBeacon + BLE 无感解锁方案的实现记录
前端