问题标签 [react-context]

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 投票
0 回答
59 浏览

reactjs - 即使组件仍然被渲染,React props 也会被评估

我的组件有一个包装器,告诉它们在完成加载之前不要渲染,看起来像这样

但是,当我在 Context Consumer 中使用这个包装器时,即使 LoadingInitialState 为 true 并且不应该渲染子代,子代的 props 仍在评估中。

任何人都可以解释为什么 ChildComponents 道具仍在被评估,即使它没有被渲染?有没有更好的解决方案来做到这一点?

0 投票
3 回答
3317 浏览

reactjs - reactjs - 导入 3 级深度反应

我正在使用 react 并正在为我的项目尝试新的上下文 API,它是一个“Reddit 克隆”。所以 myContext是在一个名为的文件中创建的,该文件provider.js位于. 现在,我在它自己的文件夹中创建了一个,它通过以下方式导入:srcApp.jsHeaderComponentContext

LoginComponentHeaderComponent. 而且,LoginComponent它在它自己的文件夹中。现在,我Context通过以下方式导入:

树

导入工作正常,../.../导入的抛出和错误。

编译失败。

./src/HeaderComponent/LoginComponent/index.js 模块未找到:无法解析 'C:\Users.......\reddit\reactfe\src\HeaderComponent\LoginComponent' 中的 '.../provider'

0 投票
1 回答
1397 浏览

javascript - 未处理的拒绝(TypeError):api.getUser 不是函数

我正在构建一个 React 应用程序,它使用 Axios。问题是这在上个月工作,现在突然停止工作。这个错误对我来说毫无意义,因为它以前可以工作。

错误状态Unhandled Rejection (TypeError): api.getUser is not a function

这是包含 axios、api.js 的文件:

这是使用这些文件的文件,它是 React 14 UserContext.js 的 Context API 的一部分:

我花了最后一个小时试图找出问题无济于事。任何帮助,将不胜感激。

我查看了出口是如何发生的,或者是否有其他事情发生但找不到任何东西。

谢谢

0 投票
1 回答
604 浏览

javascript - 通过根组件中的 React Context 传递 Redux 存储是否正确?

我正在搭建一个大型React应用程序。事实上,它是高级管理面板,我想用它Redux来处理state应用程序的全局和Redux Saga异步操作。

几天前我在 中看到一篇文章medium,它是关于新React ContextAPI 的,它很棒而且很有用。

我还看到了一个Stack Overflow关于 using 的有用问题React Context这里是关于React ContextvsReact的,我的情况有些不同。

就我而言,我想Redux用于控制state应用程序的全局,例如login全局数据等,并将这些数据传递给所有组件树React Context,这是正确的方法吗?有没有更好的杠杆方式?

0 投票
3 回答
14538 浏览

reactjs - 新的 context api 应该如何与 React Native navigator 一起使用?

我按照以下示例使用 React Navigator 创建了一个多屏应用程序:

现在我想使用新的内置上下文 api添加一个全局配置状态,这样我就可以拥有一些可以从多个屏幕进行操作和显示的通用数据。

问题是上下文显然需要具有公共父组件的组件,因此可以将上下文传递给子组件。

据我所知,我如何使用不共享共同父级的屏幕来实现这一点,因为它们是由反应导航器管理的?

0 投票
2 回答
10370 浏览

javascript - React Context API 似乎要重新渲染每个组件

我正在尝试在我的应用程序中使用新的 Context API,看起来每次更新上下文时,它都会重新渲染连接到它的任何组件。我有一个沙盒演示设置来查看代码和工作问题。当您输入输入时 - 呈现按钮上下文,反之亦然。我最初的想法是,如果您输入输入,则只会打印出输入上下文。

演示

这是它的工作原理还是我错过了什么?谢谢,斯宾塞

0 投票
2 回答
6499 浏览

javascript - 如何从反应上下文中获取数据

我有一个名为的 React 类GlobalDataProvider

我正在尝试在另一个文件“PageSection.js”中使用数据,如下所示:

但是,由于某种原因,这不起作用。我收到此错误消息:

我究竟做错了什么?

我必须导入类 DataProvider 吗?还是只有上下文变量?

0 投票
2 回答
2990 浏览

javascript - 从 React Context API 渲染函数中的地图函数渲染 HTML

我试图通过从<MyContext.Consumer>组件内部调用状态映射来呈现标题列表,但代码没有返回列表项。但是,如果我这样做,console.log(dataImTryingToMap);它会准确显示我要渲染的内容。被<ul>渲染但没有被渲染<li>。create-react-app 没有抛出任何错误。我错过了什么???这是消费者组件:

控制台日志准确地返回了我正在寻找的数据,但屏幕上没有显示任何内容。

这是<MyContext.MyProvider>组件的状态:

谢谢你的帮助!

0 投票
1 回答
119 浏览

javascript - 响应上下文以更改组件

我正在构建一个仪表板,在主页上显示多个图表。图表具有额外的过滤器功能(更改最小值最大值)。图表位于带有控制元素的一个组件中,而最小值/最大值的显示位于另一个组件中。我想在图形发生变化时更改最小值/最大值显示(即切换控制元素后)

目前我的组件如下所示:

我在这个项目中没有使用redux,也无法在这个项目中使用它。

所以我想我会使用 react context api,但没有经验。

最后,它应该看起来像这样。如果单击按钮 min (graph.js) => 在 minmaxview.js 中更改值

我的问题是现在。我可以为此使用反应上下文吗?如果可能的话,有什么好的例子吗?或者有人有其他解决方案吗?

如有必要,通过会话(可能由于设置状态时 compUpdate 中的无限循环而无法实现)

先感谢您。

0 投票
0 回答
204 浏览

reactjs - 使用 socket.io 和 preact-context 的 Preact 应用程序?

我最近开始玩 preact 并且对易用性和性能很感兴趣。我也一直在关注 react 的新上下文 api(preact 有一个库preact-context以相同的方式操作)。

是否有人可以使用结合 socket.io 和 preact-context 的 preact 共享/参考任何示例或应用程序?

我特别想比较“preact+preact-context”方式与“react+redux+router+thunk+saga+...”方式,特别是因为它与 SPA 桌面样式应用程序有关

我要构建的 SPA 应用程序将是一个 MDI(多文档界面),而不是一个状态可以全部保存在 redux 中的内容服务应用程序。我们还发现,以“Redux”方式做事给我们的代码增加了很多开销和复杂性,所以我想看看是否有更好的方法。

我希望从提供的一些示例中了解:

  • 如果没有使用 context api 的 redux,SPA 类型的应用程序会是什么样子?(我想这对于 react 和 preact 是一样的)
  • 使用 context api 做 SPA 的优缺点是什么?
  • socket.io 可以以某种方式在上下文 api 提供程序中使用吗?