为了账号安全,请及时绑定邮箱和手机立即绑定

请问在redux 中可以使用settimeout 么?

/ 猿问

请问在redux 中可以使用settimeout 么?

明月笑刀无情 2019-08-17 11:11:14

redux 中可以使用settimeout 么


查看完整描述

4 回答

?
守着一只汪

可能是你的action没有connect到组件上,没有把这个方法传过来。 

  1. 参考我写的一个方案 

  2. <pre t="code" l="js">

@connect(

state =; state,

dispatch =; bindActionCreators(action, dispatch)

2.根据redux文档的方案


<pre t="code" l="js">


// 哪些 action 创建函数是我们想要通过 props 获取的看

function mapDispatchToProps(dispatch) {

return {

onIncrement: () =; dispatch(increment())

};

}


export default connect(

mapDispatchToProps

)(Counter);



查看完整回答
反对 回复 2019-08-18
?
慕仙森

// 这里的 TODO_FILTERS 是 object literal
const TODO_FILTERS = {
// SHOW_ALL / SHOW_ACTIVE 等是它的 computed property name ,
[SHOW_ALL]: () => true,
[SHOW_ACTIVE]: todo => !todo.completed,

/* todo => todo.completed 是 arrow function
* todo 是该 function 的形参
*/
[SHOW_COMPLETED]: todo => todo.completed
}


查看完整回答
反对 回复 2019-08-18
?
泛舟湖上清波郎朗

thunk的意思是中间函数,在redux中,有个东西叫做action,如果配置了redux-thunk,那么在action中写代码的时候,就可以写成下面这种形式:
function saveData(data) {
return {
type: 'SVAE_DATA',
date: data
}
}

exports function getData(){
return async (dispatch) => {
const data = await get(`/api`)
if (result) {
await dispatch(saveData(data))
}
}
}
在这个例子中,saveData就是一个thunk,getData的作用是接收服务端返回的数据,然后通过thunk函数去调用对应的reducers保存到store上。dispatch就是负责调用thunk函数




查看完整回答
反对 回复 2019-08-18
?
慕丝7291255

redux-persist是一个持久化存储state的插件,那么为什么要用它呢?持久化对于前端开发有什么好处?
2个问题可以一起回答:
redux的store状态树保存的state并不是持久保存的,state只是一个内存机制,而我们知道,本地数据库或者像localstorage之类的缓存系统才有可能长时间保存数据,而redux-persist可以让你的数据从state分离出来,保存到浏览器缓存中,以便实现数据的持久化缓存。
既然如此,那么我们手动保存到浏览器缓存就行了,不是吗?首先可以肯定的是,手动保存是可以的,也就是一个简单的setSessionStorage就能搞定,那么redux-persist做了什么呢?它并没有将所有state都保存到了缓存,而是保留了redux的store,在store里面保存了一个个的key,这些key对应了缓存里面的一个个持久化数据。

不是所有数据都需要持久化存储,因为很多数据都要保持跟后端的同步更新,那么当你遇到需要持久化保存的数据的时候,就可以使用这个插件来完成你的任务了。


查看完整回答
反对 回复 2019-08-18

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信