草庐IT

example-redux-update-nested-props

全部标签

javascript - 在 Redux 操作中将数据放入 "payload"键有什么好处?

我在任何地方都找不到很好的答案,这似乎是一个毫无意义的约定。在许多教程和文档中,Redux操作是这样定义的:{type:"ACTION_NAME",payload:{foo:123,bar:456,}}payload对象有什么意义?为什么不写这个:{type:"ACTION_NAME",foo:123,bar:456,}我正在使用Flow,我喜欢将我所有的操作类型定义为一个联合体,没有嵌套的有效负载:typeAction={type:'ACTION_NAME',foo:number,bar:number,}|{type:'ANOTHER_ACTION',someData:string,

javascript - 在 React/Redux 应用程序中,我什么时候应该显式地传递一个 prop,而不是使用 mapStateToProps 从全局状态中获取它?

我正在构建我的第一个React-Redux应用程序,在许多情况下,我可以选择执行或者有然后做functionmapStateToProps({pagination:{page}}){return{pageNumber:page+1};}使用一种或另一种方式的含义是什么?我什么时候应该更喜欢一种方式?是否有关于如何拾取Prop的最佳实践?每次用都感觉有点不好mapStateToProps在一些深层嵌套的组件中,因为感觉组件与特定页面/应用程序的状态耦合。 最佳答案 没有一个好的答案。根据位于http://redux.js.org/do

javascript - 在 Jest 中调用 React 的 this.props.onClick(this) 时到底应该测试什么?

我一直在为我的所有事件(当然还有其他一切)编写测试,但我不知道如何测试this.props.onClick(this)在子组件上被调用。我的子组件有以下代码:closeModal:function(){this.props.onClick(this);},render:function(){return()}家长是这样听的:onCloseModal:function(){this.replaceState({modalStatus:'hidden'});},render:function(){return()}我知道如何测试parent的点击事件,我也知道如何在测试中调用child的按

javascript - 在 React-Router 中将状态作为 Prop 从父级传递给子级?

过去几天我一直在使用React-Router,我非常喜欢它!我一直遇到的一个问题是我找不到将状态从父组件传递到子组件的最佳方法。我一直在查看一些堆栈溢出和博客文章,但我似乎无法找到我想要的东西。这是一个关于我正在寻找的东西的非常简单的例子。classAppextendsReact.Component{constuctor(props){super(props);this.state={name:"helloworld",lastname:"worldhello"};}render(){//SOMETHINGLIKETHISWOULDBEPREFFEREDif(this.props.ch

javascript - 中继现代 RefetchContainer Prop 未传递给组件

我在RelayModern中设置refetchContainer时遇到一些问题。父组件是QueryRenderer,它运行初始查询,适本地填充子组件的Prop(a-prop-riately?嗯?嗯?!)。refetchContainer指定了我们所有的变量,并在输入字段的onChange事件上,使用新变量重新运行查询。这一切都很完美,除了child的Prop永远不会用收到的新数据更新。我可以深入中继存储并查看确实收到了带有适当数据的查询。一段时间以来我一直在反对这个问题,我会很感激一些帮助。可能我缺少一些简单的东西。上帝知道RelayModern文档很少。我四处寻找,找不到合适的解决方

javascript - 刷新后 React-Redux 状态丢失

我真的是React和Redux的新手,我一直在学习StephenGrider的AdvancedReactandRedux类(class),并且我正在做身份验证的客户端。我已经在我的本地存储中保存了一个token,在我刷新页面之前一切似乎都运行良好。当我登录/注册时,导航会更改为显示注销按钮,但如果我手动刷新页面,导航会变回显示登录/注册按钮。我对此很陌生,不知道应该将什么作为代码片段包含在内。我将保留reducer和actions/index.js。还有this喜欢我的git仓库。Action/index.jsimportaxiosfrom'axios';import{browserH

javascript - 我是 'allowed' 修改构造函数中的 Prop 吗?

他们说你不应该修改React组件中的props。这是否扩展到在构造函数中修改它们?具体而言,exportdefaultclassBookingFormextendsReact.Component{constructor(props){//amIallowedtomodify`props`here?super(props);}}非常清楚,我知道JavaScript允许我这样做,我想问的是这是否是一种糟糕的设计模式,将来会让我头疼。我想在初始化时重新格式化一些Prop;之后他们不会再改变。 最佳答案 再重申一下zerkms向我指出,答案

javascript - 处理 react.js 中未定义 Prop 的最佳方式是什么?

假设我有一个在页面加载时分派(dispatch)的操作,比如在index.js文件中。例子store.dispatch(loadData());在我的reducer中,我将状态初始化为一个对象。像这样functionmyReducer(state={},action)现在我有一些智能组件可以订阅我的状态,然后将它传递给另一个组件来显示数据。此场景的另一个重要注意事项是数据的检索是异步发生的。我们还假设此对象的键是某个数组。所以标记组件会有这样的东西{this.props.object.key.map(k=>dosomething)}现在因为key是未定义的,如果我在上面调用map,我会

javascript - 我如何像 React 一样在 Angular 2+ 中传递 Prop ?

在React中,我可以像这样任意传递props:functionSomeComponent(props){const{takeOutProp,...restOfProps}=props;return;}如何在Angular中做同样的事情?--更具体地说,我想编写一个自定义下拉组件并将Prop向下传递到一个选择框。 最佳答案 与React组件相反,Angular组件不会在输入更改时重新编译,而是使用@Input属性装饰器来启用更改检测。所有预期传递的属性都应明确定义为组件输入。对于自定义选择组件,没有比这更好的选择了。可以从当前组件元

javascript - Redux-Thunk - 异步 Action 创建者 promise 和链接不起作用

我正在尝试发送一个Action。我找到了一些操作的工作示例,但没有我的那么复杂。你能给我一个提示吗?我做错了什么?我正在使用TypeScript,最近删除了所有类型并尽可能简化了我的代码。我正在使用redux-thunk和redux-promise,像这样:import{save}from'redux-localstorage-simple';importthunkMiddlewarefrom'redux-thunk';importpromiseMiddlewarefrom'redux-promise';constmiddlewares=[save(),thunkMiddleware,