vue计算属性问题_数据

vue使用计算属性判断table为空的时候弹出提示代码怎么实现

computed:{
  isEmpty(){
      return this.tableList.length === 0
  }
},
watch:{
  isEmpty(val){
    if(val){
        this.$toast('数据为空')
     }
  }
}

建议使用监听,计算属性添加函数需要封装组件传值

img

监听

watch: {
    table(newval) {
      if (newval==“”) {
       alear("空")
      } else {
        alear("非空")
      }
    },
  },

提示框如果是DOM元素,那你就使用v-if控制,变量为isEmpty,然后计算属性为这个变量,里面返回this.tableData.length === 0
如果提示框是一个方法控制的,那就计算属性,监听属性都加上isEmpty,并且监听里面去调用这个提示方法。

直接watch就行了,没必要使用计算属性


 watch: {
    "tableData.length": {
      handler(newValue) {
        if (newValue <= 0) {
          // 这里是 数组为空
          console.log('数组为空')
        } else {
          // 这里是 数组为不为空
          console.log('数组不为空')
        }
      },
      deep: true,
      immediate: true,
    },
  },