我很难在安静的大型网站中实现Redux。我有使用useSelectorAPI连接到商店的组件我使用Reselect来编写选择器。例如,问题是我不知道在哪里触发页面的引导操作。我有一个由无状态组件组成的容器,它只接受Prop并显示它们。在容器中,可以触发所有操作以从API获取数据。(使用redux-thunk)主要问题是开发人员应该列出要触发的操作以显示页面。但我想知道在尝试从商店中选择数据时是否可以触发正确的操作:exportfunctiongetComment(state,id){constcomments=state.comments;if(comments[id]){return
我在一个简单的射击游戏中使用redux作为状态容器。状态是完全确定的,系统接收的唯一输入是用户输入(例如,开火等)。我的问题是我必须跟踪(和处理)游戏中发生的某些事件(例如某些东西被摧毁等),我不太确定该怎么做。我目前的解决方案是,reducer在当前状态下维护一个events数组,每个reducer只是将事件附加到它。FIRE_WEAPON+-+FIRE_WEAPON+-+||||+-v--------+--------------v------------->||+->PLAYER_DESTROYED这里reduce接收到两个FIRE_WEAPONAction,并且应该“发射”一个
我们有一个组件需要访问Redux的商店。importReactfrom'react'import{connect}from'react-redux'constComponent=(props)=>{...code...}我们已使用connect将此组件连接到商店。exportdefaultconnect(mapStateToProps)(Component)我们现在需要定义mapStateToProps作为第一个参数传递给connect。constmapStateToProps=state=>({...state})为什么这种将数据注入(inject)组件的方法是可以接受的,或者为什么
我有呈现消息的路由/messages/:id。但是,如果id指向一个不存在的消息,应该在哪里以及如何处理它?我的组件使用redux绑定(bind)到消息:functionmapStateToProps(state,ownProps){return{message:state.messages[ownProps.params.id]}}然后message将是undefined以防不存在这样的消息并且组件必须处理它,并呈现不同的东西。但是,这似乎会使组件膨胀,我想也许这应该在路由器中处理?如果没有这样的消息,则不应允许调用该路由。有什么想法吗? 最佳答案
我正在使用redux-form加载编辑表单的初始数据似乎让我感到困惑,但提交时未验证数据。我已经设法将数据传递并加载到字段中,但似乎没有加载到表单Prop等中。请查看以下代码,如果需要更多信息,请告诉我。Form_Bayan.jsimportReact,{Component,PropTypes}from"react";import{browserHistory}from"react-router";import{reduxForm,Field}from"redux-form";import{MyCustomInput,MySimpleInput,MyCustomSelect}from"
我正在用React编写应用程序。我正在使用Redux将我的数据存储在页面上。此数据包含一个巨大的用户对象(最多嵌套3级),其中包含所有用户数据。我几乎在任何地方都在使用它,所以我认为最好将它存储在redux中,而不是每次需要时都从服务器请求它。此数据可能约为70-80KB,但我认为每个用户的平均大小为30-40kb。此数据是结合5-6个reducer和30-50个操作修改的。我有一个使用所有这些数据的组件和10-15个使用部分数据的组件。reduxstore的大小可以接近100kb吗?对App性能有影响吗?任何浏览器都可以在没有任何性能问题的情况下处理我的应用吗?你能提供你的平均red
我有一个基于GUIReact/redux的应用程序。作为View的一部分,有一个我希望闪烁的“指示器”react组件,闪烁是通过CSS3动画(动画帧)完成的。调用react组件的indicator.blink()成员函数使指示器闪烁(它基本上从DOM元素中删除了blink类,然后在1ms之后再次添加它,作为hack来获取围绕CSS3动画没有“重启”api的事实)。在redux框架中发生某些Action时(如果需要,它们可以是thunk),我希望在ReactView中调用此blink()函数。如何最好地做到这一点?让redux操作修改应用程序状态,然后将指示器元素作为prop绑定(bin
假设我正在用Redux编写一个应用程序,我的任务是使用第3方库添加日志记录。其API如下:functioncreateLogger(token){//theloggerhasinternalstate!letlogCount=0;return{log(payload){logCount++;//modifylocalstatefetch('/someapi',{//shippayloadtosomeAPImethod:'POST',body:payload});}};}然后我会像这样使用库:letlogger=createLogger('xyz');logger.log('foobar
在我的ReactRedux应用程序中,当主页加载时,我想从API获取数据并将其显示给用户查看。正在从操作中获取数据并更新状态。但是,我没有将状态视为组件的支柱。不确定什么连接不正确。主页组件:importReact,{Component,PropTypes}from'react';import{connect}from'react-redux';import{bindActionCreators}from'redux';import*asactionsfrom'../actions/actions';import'../styles/homeStyles.css';classHomee
我正在使用react/redux/javascript开发TheGameofLife的一个版本,当我使用它时性能很糟糕。HereisalinktotherunninggameHere'sthesourceongithhub目前,我在每个滴答声(用户可更改的250,500,750毫秒)更新每个单元格的状态。为此,我循环遍历代表每个单元格的对象数组。每个对象中都有一个名为status的参数,它可以是一个整数,1表示活着,0表示死了。然后我拉入三行,每行三个单元格,对于相关单元格周围的中间和底部行,我然后对这些值求和(不包括中心的单元格本身)。然后我通过if/then流程运行该数字以确定该单