• vue中$set和$delete


    vue给对象新增属性

    对于一般的对象新增属性,只需要对象新增属性赋值操作就可以啦,但是不会触发视图更新.
    示例:

    <template>
      <div>
         <div class="box">
           <span>姓名: {{infos.name}}</span>
           <span>{{infos.message}}</span>
           <button @click="addtooltip">查看信息</button>
         </div>
      </div>
    </template>
    
    <script>
      export default {
        name: "module1",
        data() {
          return {
            infos: {
              name: '张三',
              age: 24
            }
          }
        },
        methods:{
           addtooltip() {
              this.infos.message = '出生于四川遂宁';
           }
        }
      }
    </script>
    

    而在我们点击“查看信息”按钮时,看到页面并没有显示,而打印 this.infos 就有message字段,所以

    实例创建后添加属性,并不会触发视图更新
    这时候需要使用 vue中 $set 方法,既可以新增属性,又可更新视图

    this.$set(this.infos, "message",  "出生于四川遂宁")
    

    或者如果是全局就使用这种

    var vm = new Vue({..})
    vm.set(this.data, "key", value)
    

    set


    vue删除对象中某个属性同理,使用delete

    delete this.data.key
    

    或者

    var vm = new Vue({..})
    vm.delete(this.info, "age")
    
    

    delete

  • 相关阅读:
    rowkey设计原则和方法
    ubuntu安装及使用
    sqoop数据迁移
    Hive 自定义UDF操作步骤
    hive之数据导入导出
    MySQL优化
    MongoDB、Redis、elasticSearch、hbase的对比
    数据库基本操作
    count(*) 和 count(1)和count(列名)区别
    BigDecimal的运算——加减乘除
  • 原文地址:https://www.cnblogs.com/xiaolanschool/p/9449758.html
Copyright © 2020-2023  润新知