草庐IT

async-redux

全部标签

javascript - Apollo "Subscription field must return Async Iterable. Received: undefined"

我有一个触发channel事件“countIncr”的突变,但我没有看到事件的相应订阅与事件负载一起触发。更新:我已经对这篇文章进行了多次更新,现在我正在更改标题以更能代表我所在的位置。我收到graphqlPlayground错误"SubscriptionfieldmustreturnAsyncIterable.Received:undefined"我遇到问题的TGRstack复制:https://github.com/TGRstack/tgr-apollo-subscription-example-microservice/没有TGRstack的工作再现:https://github

javascript - 使用 Jasmine async 测试 postMessage 不起作用

我正在尝试使用Jasmine2.0为AngularJS应用程序中的某些逻辑编写单元测试,但该逻辑位于事件监听器中。来自Controller:window.addEventListener('message',function(e){if(e.data==="sendMessage()"){$scope.submit();}},false);来自测试文件:describe("postmessage",function(){beforeEach(function(done){varcontroller=createController(controllerParams);spyOn($sc

javascript - Bluebird PromisifyAll 没有任何 Async 后缀,即可以替换原始功能吗?

Bluebird有一个promisifyAll函数“通过遍历对象的属性并在对象及其原型(prototype)链上创建每个函数的异步等价物来Promisify整个对象。”它创建带有后缀Async的函数。是否可以完全替换旧功能?被替换的函数就像原始函数一样工作,此外它们还返回一个Promise,所以我认为完全替换旧函数应该是安全的。varobject={};object.fn=function(arg,cb){cb(null,1)};Bluebird.promisifyAll(object);object.fn//donotwantobject.fnAsync//=>shouldrepla

javascript - 数据应该放在 redux 状态树中吗?

我对在Redux的状态树中保留什么有点迷茫。我看到关于在状态树中存储什么的两个相互矛盾的陈述。Reactdoc告诉我们只有用户输入应该存储在状态树中。Theoriginallistofproductsispassedinasprops,sothat'snotstate.Thesearchtextandthecheckboxseemtobestatesincetheychangeovertimeandcan'tbecomputedfromanything.Andfinally,thefilteredlistofproductsisn'tstatebecauseitcanbecompute

javascript - 测试 Redux 组合 reducer

假设我有几个reducer函数,我使用combineReducers(...)将它们全部组合到一个reducer中,有没有一种方法可以测试组合的reducer实际包含哪些reducer?例如,如果我有这个:import{combineReducers}from'redux'constreducer1=(state,action)=>{...}...(morereducers,etc)constrootReducer=combineReducers({reducer1,reducer2,reducer3})exportdefaultrootReducer我可以使用Mocha和Expect

javascript - 如何正确记录 React/Redux 应用程序?

我目前正在记录一个用ES6编写的React/Redux应用程序,但我找不到任何有用的信息,什么是记录React应用程序的最正确方法。在此post,工具react-docgen出现了,我偶然发现了esdoc以及。esdoc自动生成文档,react-docgen提取React组件的信息并将其放入JSON文件中。由于我的应用程序不仅是React,而且是Redux,所以我找不到最好的方式来记录应用程序。一般来说,我不认为我应该混合使用它们,我认为esdoc更适合我,但我不完全相信我应该用esdoc从生命周期钩子(Hook)、proptypes、自己的方法等开始。有没有人偶然发现这个问题并能告诉

javascript - 如何使用 async/await 去抖动?

我有一个输入框。在用户停止输入后,我想执行一个HTTP请求并等待结果。Here'sajsbin由于jsbin不允许网络请求,因此我使用setTimeout()代替。varlog=console.log.bind(console)vardelayedResults=newPromise(function(resolve){setTimeout(function(){resolve('WoooIamtheresult!')},3000);});document.querySelector('input').addEventListener('input',_.debounce(asyncf

javascript - React Router V4 正在更新 URL,但不刷新(React、Redux)

我正在尝试使用React-RouterV4将路由添加到我的应用程序,但它根本不起作用。基本上,我正在尝试使用history.push以编程方式更改路由,这会更新浏览器URL,但不会更改实际应用程序中的任何内容。注意:我正在使用redux。关于这个问题唯一回答的问题是:Reacthistory.push()isupdatingurlbutnotnavigatingtoitinbrowser但是,我已经尝试了上述问题的答案,但它对我不起作用。以下是重要的片段:最顶层文件(index.js)...ReactDOM.render(,document.getElementById('root')

javascript - 在 redux store 中处理 "selected"项的正确方法

当您需要保留项目列表和选定项目时,我想听听有关为这种情况构建redux存储的意见。一个例子。在同一页面上给定项目列表和所选项目的详细信息。用户应该能够从列表中选择一个项目。当一个项目被选中时,它的详细信息应该被加载。当所选项目更新时,它也应该在详细信息和列表中更新(例如,如果项目的名称发生更改,那么它也应该在列表中可见)。所有数据都应从后端获取,并且列表中的项目模型与所选项目模型不同。列表中的项目具有较少的属性/详细信息。所选项目包含有关数据的更多信息。在这种情况下,您认为构建redux存储的最佳方式是什么?我试过用谷歌搜索示例,但通常在所有示例中,项目列表中的项目和选定的项目都被认为

javascript - Redux 中的性能和 mergeProps

在我的redux容器中,我必须派发相当复杂的操作,从商店中获取大量属性。在不破坏性能的情况下,我无法找到解决问题的正确模式。让我们以仅包含发送消息的发送按钮的容器为例:(对于这样一个小例子,以下任何一种方法都可以很好地工作,我只是想说明我在更大的容器中遇到的问题。)天真的方法-将所有参数传递给组件functionmapStateToProps(state){return{user:selectors.selectedUser(state),title:selectors.title(state),message:selectors.message(state),};}functiond