问题是点击 多选框之后没有改变视图

在拿到数据回填后,点击多选框没有改变视图,代码如下:
demo :
在这里插入图片描述
在这里插入图片描述
数据:
在这里插入图片描述
在这里插入图片描述

方法:
在这里插入图片描述

当我点击多选框之后

打印的数组
在这里插入图片描述
视图
在这里插入图片描述

原因以及解决

我就发现数据其实是已经改变了的,但是他的视图却没有改变,因此我怀疑是因为 vue 会监听不到数组的变化,故此使用 this.$forceUpdate() 来强制刷新页面,问题就解决了。

    admissionChange (checkedValues) {
      this.$set(this.form, 'admissionModeArr', checkedValues)
      this.$forceUpdate()
      this.setCkeckBox = Boolean(this.form.admissionModeArr.includes('3'))
      console.log(this.form.admissionModeArr)
    },
Logo

前往低代码交流专区

更多推荐