美文网首页
react 数据变更不触发试图更新

react 数据变更不触发试图更新

作者: 变量只提升声明不提升赋值 | 来源:发表于2021-07-13 15:27 被阅读0次

不要在原引用上做数据修改,应该给原数据赋值一个新的值

that.specsList.forEach(d => {
          if (d.key == data.key) {
            d.img_url = res.cover
          }
        })

上面的代码中,直接在原数据身上做修改。react是不会重新触发render函数的。
需要给原数据一个新的值

   that.specsList = that.specsList.map(d => {
          if (d.key == data.key) {
            d.img_url = res.cover
          }
          return d
        })

这样,给他重新附了一个值,视图就会更新了

相关文章

  • react 数据变更不触发试图更新

    不要在原引用上做数据修改,应该给原数据赋值一个新的值如 上面的代码中,直接在原数据身上做修改。react是不会重新...

  • componentWillUpdate/componentDid

    基础 React.Component 1.state更新或者父组件state更新都会触发 React.PureCo...

  • React中的setState简析

    React中数据的更新操作 这里以更新数组为例说明React中数据应该如何更新 React中更新数组必须生成一个新...

  • 表单控件与绑定之--lazy

    当input失去焦点后才会触发数据更新

  • 2019-03-26

    MYSQL数据库触发器 在 插入 更新 删除 数据时触发事件 delect from xs.kc where xs...

  • vue 数据更新驱动试图

    官方原理图 参考如下所示: 调试分析 数据改变 驱动试图改变的调用栈如右图所示 changeMsg this.ms...

  • react-native知识点

    react-native知识点 PureComponent是纯组件 即无状态组件,更新state不会触发重新渲染,...

  • Python_redis/mysql 同步方案

    总的思路就是跑一个触发器服务,根据新增、更新选择不同的路径,进行同步数据操作。 新增数据新增数据 更新数据更新数据...

  • React setState不触发render更新

    下面这种写法不会触发render更新 原因是:出现了浅比较,不触发render生命周期下面是正确的写法 参考链接:...

  • C#调用触发器完成数据更新的实例

    C#调用触发器完成数据更新的实例 一、程序界面 二、触发器 1、定义 触发器对表进行插入、更新、删除的时候会自动执...

网友评论

      本文标题:react 数据变更不触发试图更新

      本文链接:https://www.haomeiwen.com/subject/mlkspltx.html