问题标签 [react-native-router-flux]
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.
reactjs - 如何在不重置路由器堆栈的情况下重置页面?
我去的时候需要重置一个页面。但我不想重置路由器堆栈,以便我仍然可以使用pop()
转到上一页。
我试过了Actions.pageName({type: ''})
:
replace
但它会重置路由器堆栈。
reset
还重置路由器堆栈。
refresh
甚至不加载页面。
react-native - 使用组件 react-native react-native-router-flux 包裹场景选项卡
我有一个呈现的 tabbar 组件,我想在其中包装一个自定义本机模块,以实现 react 的 css 中不可用的自定义样式行为(线性不透明度渐变。)
我的第一个尝试和想法是将组件属性添加到包装场景组件的顶层。该组件内部可能类似于。
这不起作用并引发错误。我尝试过克隆道具,但我将所有内容都包裹起来,整个页面都包裹在线性渐变中:/
那么如何在线性渐变中只包裹标签栏呢?或更一般地说,任何包装组件。
ios - React Native - 路由器通量 - 关键错误的空场景
在我的 index.ios.js 文件中使用以下代码时出现错误:
类别是由“react-native-tableview”完成的表格视图中的类别列表。单击 CarRacing TableView 行时,出现以下错误:
我不确定我在这里做错了什么。我理解这个错误,但我不太明白我在代码中做了什么来搞砸这个。
有任何想法吗?谢谢!
android - 视频在调试版本中的工作,但在发布版本中它们不显示
我正在使用模块react-native-video,它的工作方式正是我在调试版本中想要的方式。但是一旦我assembleRelease
它只显示白屏而不是视频。为什么在发行版中不能播放?
我认为不知何故,当它编译时,它再也找不到位置了,但我该如何解决呢?
这是我的视频组件:
视频道具是从另一个页面传递的,如下所示:
android - 使用 React-Native-Router-Flux 在 React Native 中嵌套场景
我正在使用 React-Native-Router-Flux (V. 3.37) 来构建一个 Android 应用程序,并且我正在尝试创建嵌套场景。使用 DefaultRenderer 元素,我已经能够创建一个嵌套场景,但我希望有多个并且能够在它们之间导航。
我的 index.android.js 看起来像这样(在 Router 和 Scene key="root" 元素中)。
外部组件是这样的:
像这样,Inner1 组件将正确嵌套在 Outer 组件的 smallContainer 视图中。但我不知道如何导航到 Inner2。如果我只是将 this.props.children[1] 硬编码为 navigationState,它会告诉我“navigationState 和 onNavigate 属性不应为空”。
如果我使用 onPress={Actions.inner2} 在 Inner1 中放置一个 TouchableHighlight,它根本什么都不做。
我的直觉告诉我答案在于 Outer 组件的 DefaultRenderer 元素中的 onNavigate={this.props.onNavigate} 属性,但我一直无法找到任何相关信息。我刚刚从 React-Native-Router-Flux 的示例文档的深处复制了 DefaultRenderer 元素。
我还研究了 React-Native-Simple-Router、React-Native-Router 和 React-Router-Native,但显然没有一个更好。
reactjs - 反应本机路由器通量:覆盖android硬件后退键
目前,当我按下 android 硬件返回键时,react 路由器 Flux 将调用 Actions.pop() 方法。有没有办法阻止它调用阻止返回上一个场景的方法,因为我想跳转到其他场景。从示例场景A到场景B,场景B到场景C,当在场景C中按下返回键时,我想去场景A。我试过了
react-native - 如何在 Actions.SCENE_KEY 中使用变量(反应原生路由器通量)
如果这是我忽略的简单事情,请原谅我。我对编程还很陌生,对 React 和 React Native 来说要新得多。
我正在构建一个简单的导航抽屉。
抽屉显示一个菜单组件,该组件具有renderMenuItem(item)
返回以下内容的功能。
它负责将正确标记的按钮返回给渲染函数。
我遇到的问题是当它到达onItemSelect
功能时,
按下按钮时,我无法让它实际显示新场景。如果我要将场景硬编码到onPress()
按钮中的函数中,我可以让它工作。例如:
显然,那是行不通的。我需要的是能够在任何一个功能、功能或功能中使用项目。renderMenuItem(item)
onItemSelect(item)
谢谢你。自从昨晚试图弄清楚这个问题以来,我一直在破坏我的大脑。
react-native - 在 router-flux 中使用 Action.___() 更改场景运行构造函数和 ComponentWillMount 但不显示新场景
我有一个使用 router-flux 设置的项目,但我无法让我的场景更改工作。
如标题中所述,我尝试切换到的场景的构造函数与 componentWillMount 一样运行,但视图不会更改为下一个场景。
路线设置如下:
并且动作被调用
我在另一个项目中有一个类似的设置,它工作正常,我能找到的唯一区别是这段代码在一个集成的 iOS 项目中运行。我没有收到任何错误,预期的下一个场景只是没有渲染。
版本:
反应:15.3.2,反应原生:0.37.0,反应原生路由器通量:3.37.0
javascript - React Native Router Flux - 如何调用场景的方法
当我按下导航栏的右键时,我想在场景的组件中调用一个函数。
在父母中:
在孩子(History.js)中:
javascript - 顶级组件 root-Scene/Router react-native-router-flux
我想在场景的顶层添加一些“逻辑组件”。
即我明白了:
每个容器都使用 connect()() 连接到 Redux,并且每个容器都有自己的 reducer,只有它自己需要。
IE:
所以,我需要做的是将“根”场景连接到 Redux 并为其提供通用减速器(所有其他场景都依赖的减速器)。但是有了这个,我想使用componentDidUpdate,componentWillReceiveProps,...来监听,即连接更改时的Netinfo,以更新reducer的状态。
我不确定它是否清楚,我希望它是。如果您需要更多信息,请询问他们。
谢谢您的帮助
解决方案
看看 atlanteh 的答案,看看它说的一切所需的文档 :) https://github.com/aksonov/react-native-router-flux/tree/master/docs
我的最终解决方案是:一切都按预期工作:
它基本上是我之前尝试过的所有东西的混合体,效果很好!没有“已定义密钥 xxx”或其他任何内容。