问题标签 [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 - React Native Router Flux (react-native-router-flux) - 在 reducer 中调用动作
我有一个关于从减速器调用动作或只是重定向到另一个场景的问题。我想在用户成功登录后重定向到一个场景。我的 action.js 使用了“redux-api-middleware”模块:
动作.js
减速器.js
现在,如果我LOGIN_SUCCESSFUL
想调用 ActionsMY_SCENE_KEY 之类的操作来重定向到下一个屏幕。当我在 reducer 中调用 Actions 时出现一些错误,这可能是错误的方法。
reactjs - react-native-router-flux :在返回导航时没有调用 React 生命周期方法
我正在开发一个反应原生应用程序。我正在使用react-native-router-flux库在应用程序中进行导航。
该库工作正常,但在返回导航时没有调用任何反应生命周期方法。
假设例如我在第 2 页上按下后退按钮,它导航到第 1 页并且第 2 页的 componentWillUnmount() 被调用,但第 1 页的生命周期方法没有被调用。
我想根据新状态刷新页面 1。
任何帮助将不胜感激。
javascript - React Native - navigationState.children[3].key "SCENE_2" 与另一个孩子冲突
我们的 react-native 应用程序中的当前导航存在问题。我们使用react-native-router-flux模块。
我们的路由器结构如下所示:
我们使用自己的 TabBar,如下所示:
TabBar 包含几个按钮。其中之一具有对个人资料场景的操作。像这样:
如果我单击配置文件按钮,它只会在第一次工作。当我返回并再次单击配置文件按钮按钮时,出现错误:
navigationState.children[3].key "scene_2_PROFILE_TABBAR" 与另一个孩子冲突!
代码有什么问题?我是否错误地使用了操作?我还能如何构建我的代码?
javascript - React Native Router Flux:如何设置 NavDrawer 的按钮和导航栏的样式?
在 React Native Router Flux 中,我有一个react-native-drawer
名为NavDrawer
. 它目前在导航栏左侧有默认的汉堡菜单图标,并希望将其更改为另一个自定义图标。所以我尝试了,leftTitle='Menu',但它没有改变。
所以我想知道如何自定义react-native-drawer
的默认菜单图标?
而且我还通过 更改了导航栏的高度navigationBarStyle
,因此按钮目前靠近导航栏的底部而不是在中间。所以在 中navigationBarStyle
,我尝试了flex: 1, flexDirection: 'row', alignItems: 'center'
,但没有改变任何东西。
那么如何将导航栏中的元素水平居中对齐呢?
这是代码:
谢谢
javascript - 使用 react-native-router-flux 与 nativebase
我读了https://blog.nativebase.io/the-caveats-of-using-navigator-in-react-native-9547d99172ce#.cghvxk1mo
使用 react-native-router-flux 作为导航器,但是当我将它与 nativebase 一起使用时。nativebase 的组件未激活
文件:Home.js
文件:我的场景.js
运行应用程序时。nativeBase 的组件未激活。
任何人都将 nativeBase 与 react-native-router-flux 一起使用。请给我一个例子!谢谢你的帮助!
react-native - React + Redux 为我的 react-native 应用程序设置。处理连接的正确方法是什么?
我正在使用 react-native-router-flux 库构建一个简单的 react-native 应用程序。
我只有3个场景:
- 家
- 搜索
- 收藏夹
我在我app.js
的原样中定义了它们:
在我的setup.js
中,我有以下内容:
我的问题是我是否应该将每个组件(主页、搜索、收藏夹)连接到商店,或者我是否应该在我的应用程序 (app.js) 组件中这样做并将动作和状态作为道具传递给每个场景组件。
我有以下行动:
- 获取最近()
- searchByKeywords(关键词)
- searchByCategory(categoryId)
- addToFavorites(photoId)
- removeFromFavorites(photoId)
以及以下减速器:
- 照片结果
- 最爱
请让我知道在这里设置的最佳方式。我应该连接到每个组件中的状态和操作,还是在 App 组件级别(定义路由器场景的位置)执行一次并向下传递。
javascript - 在 React-Native Navigator 中传递道具/状态
React Native 新手在这里。
我正在尝试构建一个简单的 React Native 应用程序来练习,它本质上只是一个多页联系表。
当我通过导航器(navigatorRenderScene 函数)渲染子组件时,我无法找出将道具/状态传递给子组件的最佳方式
每当我尝试在这里为我的组件分配道具时,它允许我传递一个字符串,但不能传递一个函数或对象。例如在组件中首先,我试图传递一个字符串和一个函数。一旦页面被渲染,只有字符串会保持它的值。
我这样做完全错误吗?我是否需要研究某种状态管理系统,例如 Flux 或 Redux?甚至可能是 redux 路由器包?(老实说,还没有碰过这些)
路由一切正常,只是我无法弄清楚的道具/状态。
这是我的索引
这是一个示例组件,首先
javascript - 如何垂直居中导航栏元素并删除右导航栏按钮?
我正在使用 react-native-router-flux 并设置了导航栏。目前,导航栏的高度被设计为比默认高度更短,因此导航栏容器内的元素位置较低,靠近导航栏容器的底部。
我试过navigationBarStyle={{backgroundColor: 'pink', height: 55, flex: 1, justifyContent: 'center'}}
了,但还是没有运气。
如何将导航栏中的元素垂直居中?
目前,右侧导航栏按钮Settings
设置为导航到Settings
组件。但是在Settings
页面上,想去掉Settings
右边导航栏的按钮。我该怎么做?
这是它的外观(粉红色背景的导航栏是容器,左侧的抽屉按钮、场景标题(主页)和右侧的设置按钮靠近导航栏的底部):
这是代码:
先感谢您
javascript - 如何在 React Native Router Flux 中嵌套场景并使用 direction='vertical' 导航?
我想嵌套 react-native-router-flux<Scene/>
并尝试以下操作,但我无法导航到<Scene component={Home}/>
from <Scene component={Profile}/>
:
我想将组件嵌套Profile
在组件内Home
,因为它只能通过Home
组件访问。
那么如何正确地将组件嵌套Profile
在组件内Home
呢?
当我也导航到Profile
组件时,它会按vertical
方向导航,但是当它尝试从组件导航到另一个Actions.test()
没有direction='vertical'
设置的组件(例如)Profile
时,它应该在垂直时水平导航,而在Profile
组件内点击返回按钮导航返回vertical
方向。
由于我导航到Profile
component vertically
,如何在导航时Profile
卸载组件vertically
,即使导航到没有组件的组件direction='vertical'
?
react-native - 如何使用 react-native-router-flux 在场景转换期间防止当前场景渲染?
我在场景 A 上有一个 ListView 组件,它最初没有任何内容;它是与商店相关的最近搜索词的列表。
当用户输入搜索词并在场景 A 上单击提交时,最近搜索词存储已更新,然后我们立即转换到场景 B。我从 ListView 收到“空部分标题”警告,我认为这是由场景 A 引起的随着场景的过渡开始渲染。
我尝试在场景 A 组件上使用 shouldComponentUpdate(),但它似乎没有触发?!我希望查看当前位置和新位置,如果它们不同,则返回 false 以防止更新/渲染。
有人对此有建议吗?
设置enableEmptySections={true}可以防止出现关于空部分标题的警告消息,但这似乎是绷带,而不是永久的解决方案。