Questions tagged «redux»

Redux是基于Flux设计模式的JavaScript应用程序的可预测状态容器。

2
Axios获取url的作品,但使用第二个参数作为对象却没有
我正在尝试将GET请求作为第二个参数发送,但作为url却不起作用。 这有效,$ _ GET ['naam']返回测试: export function saveScore(naam, score) { return function (dispatch) { axios.get('http://****.nl/****/gebruikerOpslaan.php?naam=test') .then((response) => { dispatch({type: "SAVE_SCORE_SUCCESS", payload: response.data}) }) .catch((err) => { dispatch({type: "SAVE_SCORE_FAILURE", payload: err}) }) } }; 但是当我尝试这样做时,根本没有任何东西$_GET: export function saveScore(naam, score) { return function (dispatch) { axios.get('http://****.nl/****/gebruikerOpslaan.php', { password: 'pass', naam: naam, score: …

6
React / Redux和多语言(国际化)应用程序-体系结构
我正在构建一个应用程序,它将需要提供多种语言和区域设置。 我的问题不是纯粹的技术问题,而是关于架构以及人们在生产中实际用来解决此问题的模式。我在那里找不到任何“食谱”,所以我转向了我最喜欢的问答网站:) 这是我的要求(它们实际上是“标准”): 用户可以选择语言(平凡) 更改语言后,界面应自动翻译成新选择的语言 我现在不太担心格式化数字,日期等的问题,我想要一个简单的解决方案来只翻译字符串 这是我可以考虑的可能解决方案: 每个组件都独立处理翻译 这意味着每个组件在其旁边都有例如一组en.json,fr.json等文件以及转换后的字符串。还有一个帮助程序功能,可帮助您根据所选语言从这些值中读取值。 Pro:更尊重React理念,每个组件都是“独立的” 缺点:您无法将所有翻译集中在一个文件中(例如,让其他人添加新语言) 缺点:您仍然需要在每个血腥部分及其子女中传递当前语言作为道具 每个组成部分都通过道具接收翻译 所以他们不知道当前的语言,他们只是拿一个字符串列表作为道具,恰好匹配当前的语言 优点:由于这些字符串是“自上而下”的,因此可以将它们集中在某个位置 缺点:现在每个组件都已绑定到翻译系统中,您不能只是重复使用一个组件,而是每次都需要指定正确的字符串 您绕过道具了一下,可能是使用情境啄向下传递当前语言 优点:几乎是透明的,不必始终通过道具传递当前语言和/或翻译 缺点:使用起来很麻烦 如果您还有其他想法,请说! 你怎么做呢?

4
在React应用中收到“尝试导入错误:”
尝试运行React应用时收到以下错误: ./src/components/App/App.js 尝试导入错误:'combineReducers' 不是从'../../store/reducers/'导出的。 这是我的导出方式combineReducers: import { combineReducers } from 'redux'; import userReducers from './userReducers'; import articleReducers from './articleReducers'; export default combineReducers({ userReducers, articleReducers }); 这就是我如何导入它App.js: import { combineReducers } from '../../store/reducers'; 我的出口方式有什么不正确的地方combineReducers?
117 reactjs  redux 

5
这是使用Redux删除项目的正确方法吗?
我知道我不应该改变输入,而应该克隆对象来改变它。我遵循在redux入门项目上使用的约定,该约定使用: ADD_ITEM: (state, action) => ({ ...state, items: [...state.items, action.payload.value], lastUpdated: action.payload.date }) 用于添加项目-我使用了点差将项目追加到数组中。 用于删除我使用的: DELETE_ITEM: (state, action) => ({ ...state, items: [...state.items.splice(0, action.payload), ...state.items.splice(1)], lastUpdated: Date.now() }) 但这改变了输入状态对象-即使我要返回一个新对象,也禁止这样做吗?

5
Redux和RxJS,有何相似之处?
我知道Redux是Flux的一个更好的“实现”,或者说它是一种简化设计(应用程序状态管理)的重新设计。 我已经听说过很多关于反应式编程(RxJS)的知识,但是我还没有开始学习它。 所以我的问题是:这两种技术之间是否有任何交叉点(或任何共同点)还是互补的?...或完全不同?
113 javascript  rxjs  redux 


8
在获取数据时如何在React Redux应用程序中显示加载指示器?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 3年前关闭。 改善这个问题 我是React / Redux的新手。我在Redux应用程序中使用fetch api中间件来处理API。它是(redux-api-middleware)。我认为这是处理异步api动作的好方法。但是我发现有些情况我自己无法解决。 如首页(Lifecycle)所述,获取API的生命周期始于调度CALL_API操作,然后终止于调度FSA操作。 所以我的第一种情况是在获取API时显示/隐藏预加载器。中间件将在开始时调度FSA动作,在结束时调度FSA动作。这两个动作均由减速器接收,该减速器仅应执行一些正常的数据处理。没有UI操作,没有更多操作。也许我应该将处理状态保存为状态,然后在商店更新时呈现它们。 但是该怎么做呢?一个React组件流遍及整个页面吗?通过其他操作更新商店会发生什么?我的意思是,他们更像是事件而不是状态! 更糟糕的是,当我必须在Redux / React应用程序中使用本机确认对话框或警报对话框时,该怎么办?应该将它们放在哪里,采取什么行动或减少压力? 最好的祝愿!希望得到答复。

3
如何使用带有Redux的connect从this.props获取简单的调度?
我有一个连接的简单React组件(映射了一个简单的数组/状态)。为了避免引用商店的上下文,我想一种直接从道具中获取“派遣”的方法。我见过其他人正在使用这种方法,但是由于某些原因无法使用它:) 这是我当前使用的每个npm依赖项的版本 "react": "0.14.3", "react-redux": "^4.0.0", "react-router": "1.0.1", "redux": "^3.0.4", "redux-thunk": "^1.0.2" 这是带有连接方法的组件 class Users extends React.Component { render() { const { people } = this.props; return ( <div> <div>{this.props.children}</div> <button onClick={() => { this.props.dispatch({type: ActionTypes.ADD_USER, id: 4}); }}>Add User</button> </div> ); } }; function mapStateToProps(state) { return { people: …

8
如何在Redux中更新特定数组项内的单个值
我遇到一个问题,即状态的重新呈现会导致ui问题,并建议仅更新我的reducer内部的特定值以减少页面上的重新呈现量。 这是我的状态的例子 { name: "some name", subtitle: "some subtitle", contents: [ {title: "some title", text: "some text"}, {title: "some other title", text: "some other text"} ] } 我目前正在这样更新 case 'SOME_ACTION': return { ...state, contents: action.payload } 其中action.payload是包含新值的整个数组。但是现在我实际上只需要更新内容数组中第二个项目的文本,这样的事情就不起作用 case 'SOME_ACTION': return { ...state, contents[1].text: action.payload } action.payload现在我需要更新的文本在哪里。

6
在React Redux中处理提取错误的最佳方法是什么?
我有一个针对客户的减速器,另一个针对AppToolbar的减速器,还有一些其他的减速器... 现在让我们说我创建了一个删除客户端的提取操作,如果失败,我在Clients reducer中会有代码,该代码应该做一些事情,但是我也想在AppToolbar中显示一些全局错误。 但是客户端和AppToolbar减速器不共享状态的同一部分,因此我无法在减速器中创建新的动作。 那么我应该如何显示全局错误?谢谢 更新1: 我忘了提到我使用este devstack 更新2: 我将Eric的答案标记为正确,但是我不得不说,我在este中使用的解决方案更像是Eric和Dan的答案的结合……您只需要找到最适合自己代码的方法即可。 。

5
使用React Router重定向页面的最佳方法是什么?
我是React Router的新手,并了解到重定向页面的方法有很多: 使用 browserHistory.push("/path") import { browserHistory } from 'react-router'; //do something... browserHistory.push("/path"); 使用 this.context.router.push("/path") class Foo extends React.Component { constructor(props, context) { super(props, context); //do something... } redirect() { this.context.router.push("/path") } } Foo.contextTypes = { router: React.PropTypes.object } 在React Router v4中,有this.context.history.push("/path")和this.props.history.push("/path")。详细信息:如何在React Router v4中推送到历史记录? 我对所有这些选项感到困惑,是否有最佳的方法来重定向页面?


4
为什么在渲染时调用我的onClick?-React.js
我有一个已创建的组件: class Create extends Component { constructor(props) { super(props); } render() { var playlistDOM = this.renderPlaylists(this.props.playlists); return ( <div> {playlistDOM} </div> ) } activatePlaylist(playlistId) { debugger; } renderPlaylists(playlists) { return playlists.map(playlist => { return <div key={playlist.playlist_id} onClick={this.activatePlaylist(playlist.playlist_id)}>{playlist.playlist_name}</div> }); } } function mapStateToProps(state) { return { playlists: state.playlists } } export …

11
使用传播语法在ES6中进行深层复制
我正在尝试为我的Redux项目创建一个深层复制映射方法,该方法将处理对象而不是数组。我了解到,在Redux中,每个状态都不应更改以前的状态。 export const mapCopy = (object, callback) => { return Object.keys(object).reduce(function (output, key) { output[key] = callback.call(this, {...object[key]}); return output; }, {}); } 有用: return mapCopy(state, e => { if (e.id === action.id) { e.title = 'new item'; } return e; }) 但是,它不会深度复制内部项目,因此我需要将其调整为: export const mapCopy = (object, callback) => …

3
mapStateToProps和mapDispatchToProps中ownProps arg的用途是什么?
我看到在Redux 中传递给函数的mapStateToPropsand mapDispatchToProps函数作为第二个参数。connectownProps [mapStateToProps(state, [ownProps]): stateProps] (Function): [mapDispatchToProps(dispatch, [ownProps]): dispatchProps] (Object or Function): 可选[ownprops]参数是什么? 我正在寻找一个其他示例来使事情变得清晰,因为Redux文档中已经有一个

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.