提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
tabs标签页
例如:复用–(借用明细)页面,因为tabs有缓存,标签页面已经生成后,再次使用讲不在进行刷新渲染(注:标签页的生成数据,存放在仓库里面,复用是上传的数据有时与前面的相同,仓库里–新数据与旧数据会进行比较,相同时 就不会刷新state)
一、React Redux 组件更新/渲染 原理 connect之mapStateToProps?
示例:https://www.cnblogs.com/itgezhu/p/13711175.html
二、使用步骤
1.浅拷贝“骗取刷新”
代码如下(示例)(mobx):
Object.assign方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target)
const target = { a: 1 };
const source1 = { b: 2 };
const source2 = { c: 3 };
Object.assign(target, source1, source2);
target // {a:1, b:2, c:3}
@observable
dome= {
data:"num",
};
@action
setDome(data){
let newState = Object.assign({}, data);
this.refreshDate=newState
}
//设置 dome.data
setDomeData(data){
let newState = JSON.parse(JSON.stringify(data));
this.refreshDate.data=newState
}
2.用setTimeout对仓库数据进行–删除再添加 达到刷新效果
代码如下(示例):
仓库内存在相同值时–如:再次设置仓库
dome={
data:“num”,
}
import store from '../store'
let data=""
if (store.dome.data!=="num") {
data="num"
store.setDomeData(data)
} else {
data=" "
//将在 20ms后再次添加
setTimeout(() => {
data="num"
store.setDomeData(data)
}, 20);
}
//如果存在先传值空字符串,20ms后再进行添加
store.setDomeData(data)