歪比巴啵
2021-08-11 17:19
采纳率: 50%
浏览 137
已结题

问:vue3.0 中const定义的变量的值为什么可以改变?

setup () {


 const register = ref(false);

// 切换登录、注册状态
        const choose = (data => {
            if (data.state === 'login'){
                register.value = false;
            }else {
                register.value = true;   // 这里为什么可以重新赋值
          }
}

  • 收藏

3条回答 默认 最新

  • 已采纳

    const register = ref(false);
    用const 声明的变量,只是不能对变量本身重新赋值
    你register是个对象。
    register.value = false;是改变对象的属性的值。
    register变量本身的值没有改变,还是这个对象。

    已采纳该答案
    1 打赏 评论
  • CSDN专家-Time 2021-08-11 17:21
    const定义的基本类型不能改变,但是定义的对象是可以通过修改对象属性等方法来改变的。
    
    1 打赏 评论
  • ZhangMouRen_Min 2021-08-11 17:58

    你的值是引用类型,相当于你的变量是一个指针指向对象的位置,改变对象里面的属性,并不影响变量指向他

    1 打赏 评论

相关推荐 更多相似问题