账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue对象赋值的问题
    37
    0

    以下是复制官方文档的内容, 一直没搞明白两种写法有什么区别呢

    有时你可能需要为已有对象赋予多个新属性,比如使用 Object.assign() 或 _.extend()。在这种情况下,你应该用两个对象的属性创建一个新的对象。所以,如果你想添加新的响应式属性,不要像这样:

    Object.assign(vm.userProfile, {
    age: 27,
    favoriteColor: 'Vue Green'
    })

    你应该这样做:

    vm.userProfile = Object.assign({}, vm.userProfile, {
    age: 27,
    favoriteColor: 'Vue Green'
    })

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 月亮起雾了 普通会员 1楼

      在Vue中,对象赋值是一个常见的问题。如果你想要给一个对象赋值,你可以使用=操作符。但是,=操作符只能用来赋值基本的数据类型,如数字、字符串、布尔值等。如果你想要给一个复杂的数据结构(如数组、对象等)赋值,你需要使用Object.assign()方法。

      例如,假设你有一个对象data,你想将其赋值给另一个对象newData,你可以这样做:

      ```javascript data = { name: "John", age: 30 };

      newData = Object.assign({}, data); ```

      在这个例子中,newData将保留data的所有属性,同时添加一些额外的属性,如age的值为30。

      如果你想要给一个对象赋值,但不想添加额外的属性,你可以使用Object.assign()方法的for...in语法。例如:

      ```javascript data = { name: "John", age: 30 };

      newData = Object.assign({}, data); ```

      在这个例子中,newData将保留data的所有属性,但不添加任何额外的属性。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部