问题标签 [refluxjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
184 浏览

javascript - 当数据缓存在本地时,回流避免每次都访问服务器

我很好奇是否有任何商定的模式来检查在访问服务器之前是否已经加载了数据。

假设我的操作如下所示:

这是从一个简单地说给我这个数据的组件调用的:但是如果该数据已经在存储中,我不想访问服务器。我是否应该将检查商店的逻辑存储在组件中:

有没有更好的方法来解决这个问题?

0 投票
2 回答
555 浏览

reactjs - 每次测试前重置 Reflux 中的存储

是他们在 Reflux 中重置商店的一种方式。

我想在 Jasmine 中运行每个测试之前重置 Reflux 中的商店。

0 投票
1 回答
634 浏览

javascript - 使用 mocha 测试回流商店的状态变化

我正在针对 Reflux 商店编写 mocha 测试,以验证某个操作是否会导致商店中的状态发生变化。代码的缩小版本如下:

店铺:

行动:

测试:

但是,第二个断言 ( expect(AppStore.foo).to.equal(true);) 未能表明这foo仍然是错误的。

通过console.logonFooAction方法中执行 a,我已经验证了该方法实际上已被触发并且this.foo正在切换。

我在这里缺少什么基本的东西:概念上还是其他方面?我真诚地希望这不是时间问题!

0 投票
0 回答
428 浏览

socket.io - 多方法循环回流存储

有人知道回流方法的完整顺序吗?我有这个回流存储及其关系,如下面的流程所示:

component =(listen state)=> store =(listen)=> action =(listen trigger)=> component

这是完整的循环,我正在尝试将其整合到socket.io

代码片段:

店铺:

但我得到了这个结果:

为什么它似乎在重复?有谁知道?

0 投票
1 回答
185 浏览

refluxjs - shouldComponentUpdate 不会收到最新状态

我使用Reflux.connect方法来更改组件状态,但我无法获得 和 之间的不同shouldComponentUpdate部分。实际上,在被调用时已经有了我期望的新值。nextStatethis.statethis.statenextStateshouldComponentUpdate

当我想将 shouldComponentUpdate 与 Reflux 一起使用时,我需要做什么?

0 投票
2 回答
1039 浏览

android - React-Router 组件在转换时卸载

我正在使用 React-Router 来导航我的移动应用程序。出于某种原因,我的组件在每次转换时都会卸载,然后在“返回”时重新安装。这会导致丢失状态和丢失滚动位置。我没有在任何地方做“ignoreScrollPosition”,所以我对可能导致这种情况的原因感到困惑。

我正在使用 Reflux 来管理我的状态并使用 Cordova/Phonegap 为手机编写应用程序。有没有人在使用 Cordova/Phonegap 之前遇到过这个问题?

这是我用于路由器的代码:

0 投票
0 回答
119 浏览

javascript - 回流操作失败时会在控制台中引发错误

我在我的 React 应用程序中使用 Reflux,并大量使用它的异步操作。

最近Uncaught (in promise) some-error,每当操作失败时,我都会在控制台中收到错误消息。

我研究了一下,发现 Reflux 每次触发 action 时都会创建一个 promise,如果 action 失败,promise 会拒绝并且没有人可以捕捉它。我把它归结为:

在这里提琴

似乎每个动作触发器都会创建一个承诺,并且在动作失败时会导致此问题。我想这只会在action.triggerPromise显式调用时发生,而不是每次都发生。

目前我必须catch在代码中的每个动作触发器上附加一个子句来解决这个问题。我希望我的组件只调用动作,而不是处理它们的结果。有没有办法避免它?我在这里错过了什么吗?

0 投票
1 回答
298 浏览

javascript - ReactJs - 如何使用回流触发对话

我是回流的新手,我正在尝试找出触发我的反应天窗对话框的最佳方法....

我的 react 应用程序有嵌套组件,目前这是非常重的。单击我的 tabLink 组件时,我想触发对话框。

我应该把天窗的标记放在哪里?

我的天窗可以有存储和动作吗?我可以广播到哪个?

更新:我可以通过直接从我的组件调用它的动作来触发我的天窗对话框吗?

如果我拉入对话框的操作:

我可以直接调用 tabLink 组件中的操作吗:

对话动作:

否则,我是否正确地认为天窗组件需要在其需要触发的每个组件中?

我想保持天窗分离,并且视野干净。

Tablink 组件:

店铺:

行动:

需要开火的天窗:

0 投票
1 回答
252 浏览

reactjs - 未渲​​染的 React 组件会监听 Actions 吗?

我正在开发一个 React 应用程序,但遇到了问题。我正在尝试将数据从概览页面 ( /) 传递到另一个视图ShowAllView( /#/showall)。

我做了一个Action从概述中传递数据的方法。ShowAllView全班听那个Action。但是,它似乎并没有在ShowAllView课堂上触发。如果我尝试在概览中收听组件中的操作,则效果非常好。

该类ShowAllView在. render()_Action

我正在使用带有 Reflux 的 React。

有谁知道将数据从一个视图传递到另一个视图的解决方案?或者未渲染的组件应该如何监听Actions?

编辑

概述.jsx:

showall.jsx

也许这会有所帮助:

0 投票
0 回答
533 浏览

reactjs - reactjs的异步加载配置数据

我正在尝试加载一个 config.json 文件,其中包含应该在整个应用程序中用作常量的属性。

我有一个config.jsx如下:

然后我在加载应用程序之前加载数据并设置配置,如下所示app.jsx

所以之后Config.init(),我们就可以访问加载的数据了Config.ApiBaseUrl。如果我们将配置导入另一个文件,我们会丢失这些数据,例如home.jsx

如何将我的配置类编写为一个单例,一旦Config.init()被调用并设置类属性,我就可以从我们导入此类的任何地方访问属性?