页面刷新,最好不要使用location.replace()…等方式,可以使用以下方式,只是数据刷新,页面不会发生闪动
重新请求数据
const {cursor, setData, concatData, getData} = props || {};
// ...
return fetch(
req.pathname + // 本页面的url,也可以使用location.href
'?' +
qs.stringify({
jsononly: 1, // 目的:返回页面的data数据
}),
)
.then(parse_online_json)
.then(data => {
// cursor 为 baobab 提供的能力,具体可以参考:
// https://github.com/Yomguithereal/baobab
cursor.merge(data); // 所有的数据都会更新,并且毫不察觉的更新到页面
cursor.select('setData').set(data.setData); // 重置setData参数
cursor.select('concatData').concat(data.concatData); // 数组合并
cursor.select('getData').get(); // todo:
});