el-select的change事件显示v-model对应的值已经变了,但是web界面上却并没有变化?

发布于 2022-09-11 17:18:04 字数 716 浏览 35 评论 0

electron+elementui+vue.js环境:

<el-select v-model="monitorList[0].resolutionValue" placeholder="请选择" @change='changeResolution'>
  <el-option v-for="item in monitorList[0].modes" :key="item.width+'x'+item.height" :label="item.width+'x'+item.height" :value="item.width+'x'+item.height">
  </el-option>
</el-select>
    changeResolution() {
      console.log("changeResolution")
      console.log("this.monitorList[0].resolutionValue:",this.monitorList[0].resolutionValue)
      return true
    },

用鼠标把下拉框el-select中的1440x900改为1920x1080,这里的console.log打印出this.monitorList[0].resolutionValue已经变成了1920x1080,但是界面上还是显示为1440x900,请问这是哪里没写对?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

染火枫林 2022-09-18 17:18:04

据说要自己改,写成这样:
@change="$set(monitorList[0], resolutionValue, $event)"
但是却报错resolutionValue属性未定义

千寻… 2022-09-18 17:18:04

测试了下 正常 不存在你说的问题
https://jsfiddle.net/6ov4zumh/

番薯 2022-09-18 17:18:04

vue对象赋值的时候如果要响应式的,@change="$set(monitorList[0], 'resolutionValue', $event)"如一楼说的

樱娆 2022-09-18 17:18:04

monitorList[0]上面没有预定义resolutionValue属性

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文