草庐IT

async-redux

全部标签

javascript - Redux 在组件之间共享 Action

我正在使用react-native和redux构建一个移动应用程序,我正在以这种方式按功能组织我的项目结构:组件1/---Component1Actions.js---Component1Reducer.js---...组件2/---Component2Actions.js---Component2Reducer.js---...在我看来,这种项目结构令人惊叹的原因有很多,首先是因为它具有很强的可扩展性。到目前为止我遇到的唯一问题是当2个不同的组件必须分派(dispatch)相同的操作时(例如文本框中的简单文本更改)。在2个不同的文件中重写完全相同的操作是没有意义的,而且我也知道将一个

javascript - 如何检查 redux-form 是否存在错误

我正在使用React+Redux和redux-form进行表单处理和验证。到目前为止,它非常易于使用,我可以使用field.touched和field.error轻松检查各个表单字段的验证状态,但我似乎找不到任何方法或属性来告诉我是否有任何整个表格的错误。React的工作方式是,任何表单在加载后都会产生一堆错误,这就是为什么您需要使用field.touched来测试各个字段。我想要做的是在表单中的任何地方有任何错误时显示一些通用标记,但只显示一次。所以真的,我希望有类似form.touched和form.error的东西。我有一个辅助函数的设计,它将检查表单中的所有字段并返回一个boo

javascript - 为什么我必须将 async 关键字放在具有 await 关键字的函数中?

我只想等待一个进程完成,不想让函数异步。请看下面的代码。我必须使getUserList异步,因为函数中有一个await关键字。因此,我还必须编写类似“awaitUsersService.getUserList”的代码来执行该方法,而且我还必须使父函数异步。那不是我想做的。importxrfrom'xr'//apackageforhttprequestsclassUsersService{staticasyncgetUserList(){constres=awaitxr.get('http://localhost/api/users')returnres.data}}exportdefa

javascript - ES 2017 : async function vs AsyncFunction(object) vs async function expression

我刚刚阅读了有关asyncfunctions的内容,并发现了ES2017的一些类似功能。它造成了很多困惑,我只想问:asyncfunction、AsyncFunction(用于创建异步函数)和异步函数表达式(我认为这只是另一个异步函数)?什么时候应该使用一种格式而不是另一种格式?我们将不胜感激对每个怪癖和表现的强调! 最佳答案 在Javascript中有四种创建函数的方法。在Javascript中也有四种创建异步函数的方法,它们是彼此精确的镜像。为了演示这是如何工作的,我使用了一个简单的sleep函数,全局声明:functionsl

javascript - 如何限制 react-redux 连接更新重新渲染到特定状态分支?

我有一个更新全局计数器的Action和缩减器。此操作以快速间隔触发。reducer为每个操作返回一个新的状态副本。reducer看起来像:import{handleActions}from'redux-actions';import{sceneTick}from'./actions';exportdefault(state,action)=>handleActions({[sceneTick]:(state,action)=>{return{...state,loop:action.payload,}},我在各种React组件上使用react-redux的connect方法。并非所有组

javascript - 正确更新/合并 React Redux 存储中的数组值,不重复

我的初始状态如下所示,如果添加了新书或更改了价格,那么新的更新数组来自服务,我需要将其结果合并到我的初始状态。constinitialState={booksData:[{"Code":"BK01","price":"5"},{"code":"BK02","price":"30"},{"code":"BK03","price":"332"},{"code":"BK04","price":"123"}]};来自服务器的更新数组有少量记录更新/新data:[{"Code":"BK01","price":"10"},{"code":"BK02","price":"25"},{"code":"

javascript - 为什么 `async`和 `await`关键字可以赋值?

这个问题在这里已经有了答案:Whyareawaitandasyncvalidvariablenames?(1个回答)关闭2年前。我注意到async关键字可以被赋予任何值,甚至可以用作普通变量:letasync="world";console.log(async)console.log("Hello"+async)然而,即便如此,它仍然像以前一样运行:letasync="world";asyncfunctionfoo(input){returninput;}letbarPromise=foo("bar");console.log("barpromiseis:",typeofbarProm

javascript - 嵌套在 async.js waterfall 中的异步函数

免责声明:非工程师,对JS非常陌生大家好-我正在尝试利用async.js模块将一组函数链接在一起。我想要的输出是遍历mapData(对象数组),然后再将其传递给最终函数(现在-只是console.log(result)。async.waterfall([function(callback){getCoords(function(data){mapData=data;});callback(null,mapData);},function(mapData,callback){//getEmail(mapData);callback(null,mapData);}],function(er

javascript - redux 的 dispatch() 中的 [[Scopes]] 是什么

我正在使用redux和react。这使得dispatch可以作为组件中的Prop使用。因此,当我console.log(this.props)时,我在调度键下的日志中看到以下对象。[[Scopes]]:Scopes[5]0:Closure1:Closure2:Closure(createThunkMiddleware)3:Closure4:Global谁能解释一下这是什么? 最佳答案 [[Scopes]]是Chrome开发者工具在内部添加和使用的私有(private)属性,在C++中,hereinthesource.它显示函数范围内

javascript - rxjs 在 map Rx.Observable.range(1, 5).map 中使用 async/await

我想使用async/await从rxjs获取列表。我该怎么办?functiongetData(num){returnnewPromise((resolve,reject)=>{resolve(num+1)})}asyncfunctioncreate(){varlist=awaitRx.Observable.range(1,5).map(async(num)=>{constdata=awaitgetData(num)returndata}).toArray().toPromise()returnlist}Rx.Observable.fromPromise(create()).subscr