不努力code 2023-03-12 15:52 采纳率: 60%
浏览 28
已结题

vue2中,数组下标是一个对象,我改一个属性会更新视图,这是为啥

vue2中,数组下标是一个对象,我改一个属性会更新视图,这是为啥

<html>
   <head>
      <title>VueJs</title>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.3/vue.min.js">
      </script>
   </head>
   <body>
      <div id = "intro" style = "text-align:center;">
         <h1>{{ message }}</h1>
          <button @click="test" >修改</button>
          <div v-for="(item,index) in arr" :key="index" @click="update(item)"  >
              {{item}}
          </div>
      </div>
      <script type = "text/javascript">
         var vue_det = new Vue({
            el: '#intro',
            data: {
               message: '我的第一个VueJS任务',
                arr:[{name:"one"},{name:"one"},{name:"one"}]
            },
             methods:{
                 test(){
                    let item = this.arr[0]
                    //item = {name:"new"}//这样不会更新
                    item.name='33' //这样会更新
                },
                 update(item){
                 item.name="hehe"
                 }
             }
         });
      </script>
   </body>
</html>


通过你们的建议加上了this,还有一个想问的是,
通过改下标不能更新视图我知道,
哪下标是一个对象,我改一个属性会更新视图,这是为啥
这个地址可以在线运行:在线运行

  • 写回答

4条回答 默认 最新

  • nie-ny 2023-03-12 16:01
    关注

    有没有可能是 arr[0] 需要写成 this.arr[0] 才能获取到对象。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月22日
  • 已采纳回答 3月14日
  • 修改了问题 3月14日
  • 创建了问题 3月12日

悬赏问题

  • ¥15 mmocr的训练错误,结果全为0
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀