草庐IT

redux-logger

全部标签

javascript - 如何在 redux 状态更改时更新组件状态?

因为我有一个带有表单的组件,所以我需要将表单连接到组件状态。初始数据来自Redux,因此尝试通过使用props设置状态来初始化和更新组件:componentWillMount=()=>{this.setState({language:this.props.language||'en'})}language是一个连接的Prop,我检查了它是否在商店中更新。constmapStateToProps=state=>({language:state.language})我也尝试过使用componentWillReceiveProps和componentWillUpdate但它不起作用。我得到初

javascript - 在另一个 Action 之后 react Redux 调度 Action

我有一个异步操作,它从RESTAPI获取数据:exportconstlist=(top,skip)=>dispatch=>{dispatch({type:'LIST.REQUEST'});$.get(API_URL,{top:top,skip:skip}).done((data,testStatus,jqXHR)=>{dispatch({type:'LIST.SUCCESS',data:data});});};syncAction,改变skip状态:exportconstsetSkip=(skip)=>{return{type:'LIST.SET_SKIP',skip:skip};};

javascript - 通过 Redux 和 Redux 路由器处理用户身份验证

我想知道人们通常如何使用redux处理用户身份验证?我正在使用ReduxRouter并且我有一个后端RailsAPI,它通过authtoken处理用户身份验证。当用户提交登录表单时,api将返回授权token以用于后续请求。最初我只是将该授权token存储在单个状态树中,每次我发送一个需要发出需要用户身份验证的API请求的操作时,我使用(dispatch,getState)来获取该授权token,然后将其包含在API中要求。所以:getState().currentUser.auth_token。我不确定我是否以正确的方式处理这个问题。是否有人将localStorage与Redux一起

javascript - 如何在同一个 react 组件中使用本地状态和 redux 存储状态?

我有一个显示联系人的表格,我想按名字对联系人进行排序。联系人数组来自redux存储,然后通过Prop来,但我希望本地状态保存这些联系人的排序方式,因为它是本地UI状态。我如何实现这一目标?到目前为止,我已将联系人放入componentWillReceiveProps但由于某些原因,它在更改时没有收到Prop。每次reduxstore状态改变时如何更新本地状态?constTable=React.createClass({getInitialState(){return{contacts:[]}},componentWillReceiveProps(){this.setState({con

Javascript Redux - 如何通过 id 从商店获取元素

在过去的几周里,我一直在努力学习React和Redux。现在我遇到了一个问题,但我还没有找到正确的答案。假设我在React中有一个页面从链接中获取props。constid=this.props.params.id;现在在此页面上,我想显示一个来自STORE的具有此ID的对象。constinitialState=[{title:'Goal',author:'admin',id:0},{title:'Goalvol2',author:'admin',id:1}]我的问题是:从STORE查询对象的函数应该在页面文件中,在render方法之前,还是应该使用actioncreators并将该函

javascript - Redux:在 reducer 函数中调用 store.getState(),这是一种反模式吗?

我想知道,有时我有一个reducer需要来自另一个reducer的信息。例如我有这个reducer:import*asActionTypesfrom'../actions/action_type_constants';importKeyCodefrom'keycode.js/index';import{store}from"../index";import{mod}from"../pure_functions";exportfunctionselectedCompletion(state=0,action){if(action.type===ActionTypes.arrowKeyPr

javascript - 为什么我的 Redux store 应该是可序列化的?

在阅读redux文档时我发现了这个:Still,youshoulddoyourbesttokeepthestateserializable.Don'tputanythinginsideitthatyoucan'teasilyturnintoJSON.所以我的问题是,保持状态可序列化有什么好处?或者,如果我将不可序列化的数据放入存储中,我可能会遇到什么困难?而且我相信这不是redux独有的-Flux,甚至React本地状态也暗示了同样的事情。为了让我清楚这里是一个例子。假设商店结构是这样的。{books:{1:{id:1,name:"Book1",author_id:4}},author

javascript - react redux 架构表操作和缩减器

我在多个页面的表格中显示服务器驱动的数据。我目前有下表操作pageChangepageSizeChangesortloadloaded我在一些需要触发加载的页面上有过滤器。我有多个使用此功能的实体,它们将共享上述大部分逻辑,但需要单独的加载功能定义。我的想法是采取将表ID作为参数的操作,然后具有一个createTableReducer函数,该函数也将采用此ID并将表节点挂载到实体中,类似于react-redux-form中的createModelReducer|如果不使用像reduxsaga这样的东西,我怎么能从我的通用操作中触发实体特定的加载操作?我想知道如何创建一个高阶组件并将其传

javascript - react - Redux 应用程序 : "Invalid attempt to spread non-iterable instance" Issue

Atthebeginning,thatsampleappwasworkingproperly.IcouldseedatathatIinputtedoverbrowserpageanddatabase.Atnow,Icanseethedataonlyviathedatabase,thebrowserdoesn'tshowdataandgettingthiserroradditionally:"Invalidattempttospreadnon-iterableinstance".有示例代码:projectActions.jsimport{FETCH_BOOK,CREATE_BOOK,DE

javascript - 如何在 Redux 中制作全局错误处理程序并在需要时覆盖它?

想象一下处理表单提交的情况,它可以返回不同的错误:400、401、500。返回400时,我想在表单顶部显示一条消息(覆盖默认行为)。对于其他(未处理的)错误代码,应调用默认(全局)错误处理程序(显示通知toast)。只是不想为每个Action都复制此代码我使用redux-thunk中间件分派(dispatch)异步操作//Pseudocodeconstaction=(dispatch)=>{constonSuccess=(result)=>dispatch({type:'OPERATION_SUCCESS',payload:result});constonError=(error)=>