问题标签 [react-router-native]

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 回答
148 浏览

android - getUserConfirmation 不起作用反应本机

我想使用“react-router-native”的 getUserConfirmation 向路由添加身份验证,但永远不会调用 getUserConfirmation。我也找不到太多关于它的文档。

0 投票
1 回答
795 浏览

reactjs - 反应路由器本机呈现空白页

逻辑似乎很简单,尽管我尝试了六种排列来查看是否有任何变化。我不知道为什么 react-router 会这样:

最后的“欢迎”应该是不必要的,但我已经把它放在那里进行测试:如果我删除然后欢迎确实出现,所以很明显是导致空白页面呈现。

这是render()顶级组件的方法:

这是基于https://reacttraining.com/react-router/native/guides/philosophy上的示例,该示例显示了在没有封闭路由器的情况下使用了 Switch、Route 和 Redirect:

0 投票
0 回答
108 浏览

react-native - react-router-native 是否有用于 Link 组件的 activeStyle 或 activeClass?

这个问题很容易解释,但我非常想根据路线是否处于活动状态来不同地设置我的链接。

如果 Link 无法根据是否是活动路由来设置自己的样式,有没有办法通过道具或一些 JavaScript 获取活动路由,以便我可以制作自己的条件样式?

更糟糕的是,我可以从我的页面视图中调用一个函数,告诉主布局管理器我们当前在哪个页面上——但我不想这样做。

0 投票
1 回答
136 浏览

react-native - React Native:当我使用 react-router / react-router-navigation 时,视图上的样式无效

提前,对不起,如果我的英语不是最好的。

我已经很长时间没有在 React Native 上工作了,现在我必须用它来实现一个应用程序。我目前使用:

  • 安卓工作室 3.3
  • 安卓 9.0 API 28
  • 反应原生 0.57.8
  • 反应路由器 4.3.1
  • 反应路由器本机 4.3.0
  • 反应路由器导航 2.0.0-alpha.10

当我添加路由器时,样式就像背景颜色一样。从那时起,应用程序的背景只有白色,无论哪个组件在我使用视图时都不能代表边框。

我可能错过了什么吗?

我已经在每一点测试了 View 元素。结果相同。正如我所说,在我使用 React Router 之前,它是有效的。随着 React Native Paper 和 Redux 的集成,没有任何问题。我还尝试自定义styles.xml。虽然这确实适用于永久更改背景颜色,但这就是为什么我仍然不能将 Border 放在任何组件中。我还在卡片组件中尝试了“组件”而不是“渲染”。并且还带有自己的布局组件。

应用程序.js

Login.js 的一部分

都没有奏效。感谢帮助。

0 投票
0 回答
114 浏览

react-native - 为什么 react-router-native 不渲染我的组件?

试图protectedRoute为 react-native 项目实现一个实用程序,它基本上是在寻找 JWT。首先它显示加载指示器,如果不存在 JWT,它将重定向到/login.

this.props.children具有在应用程序中创建路由所需的所有信息。最初的想法是,在加载的情况下,我们只需this.props.children.component使用自定义加载屏幕覆盖即可。

但是没有给我错误的解决方案是(仅警告):

我也尝试过手动将组件内联为

component={() => <View>{...}</View>

render={() => ...}

然而,它也以同样的错误告终。不变违规:元素类型无效:期望字符串.....但得到:未定义

0 投票
1 回答
206 浏览

react-native - React Router - 从路由器参考中获取历史记录

react-router(尤其是react-router-native)中,是否可以从 的引用中获取对 的History对象的Router引用Router?(能够从任何地方路由?)

0 投票
1 回答
122 浏览

react-native - 使用 react-router-native 的链接进行测试时出现“TypeError:无法读取未定义的属性‘默认’”

对于使用 react-router、jest 和 react-test-renderer 的 react-native 应用程序,该<Link>组件似乎不可测试。react-router 文档没有提到必须为 react-native 做任何特别的事情(模拟?),我的测试只有在 react-router 的组件包含在正在渲染的树中时才会爆炸<Link>。其他组件(例如<Text>, <Router>)没有这个问题。

这个基本的 react-native 项目重现了爆炸测试。否则,该应用程序会在手机内部按预期构建和运行。

我有配置问题吗?它是无证的,还是我只是忽略了它?还是我应该放弃并改用酶?那会有帮助吗?

这是显着的测试输出:

0 投票
1 回答
587 浏览

react-native - 如何在本机模块回调中更改 react-router-native 位置

我正在构建一个 react-native 应用程序,该应用程序显示服务覆盖(如那些 facebook messenger 泡泡头),仅在 Android 中实现,并且在覆盖上单击它应该返回到特定屏幕中的应用程序。

我正在使用 react-router-native 并且我的路由结构如下:

应用程序.js

Main组件有这些:

主.js

我的 Native 模块的回调是这样调用的:

浮动视图.java

回调在组件中定义Search,它也执行原生模块:

搜索.js

问题是它this.props.history.push("/progress");在超时之外和内部都不起作用。在超时之外,该函数在之前被调用Main componentDidMountlocation.pathname没有更新。在其中调用该函数,但它不会导航到正确的屏幕。它总是落入/home.

我认为这是我的生命周期问题,因为未安装 Search 组件。我一直在想办法解决这个问题。我尝试使用该Redirect组件:

无论如何可以想办法解决这个问题吗?谢谢

0 投票
0 回答
377 浏览

typescript - react-router-native 目前没有启用对实验性语法“classProperties”的支持?

我目前正在学习如何设置一个使用 TypeScript 的 react-native-web,并且在 react-router-native 抛出错误时遇到错误:

当前未启用对实验性语法“classProperties”的支持。

检查 node_modules 文件夹并metro-react-native-babel-preset添加@babel/plugin-proposal-class-properties.

尝试将plugins部分添加到babelinpackage.json但仍然出现错误:

这是我目前的设置

已安装的软件包package.json

对于metro.config.js

0 投票
2 回答
699 浏览

json - 如何解析从不同页面发送的文本组件中 JSON.stringified 数据的值

关于本教程“React Router Native - Passing Data” https://www.youtube.com/watch?v=SdOWxoH3HLg @benawad user:4272160 我不知道如何 {"val1:"bob","val2":5} 从字符串中提取 bob 或 5<Text>JSON.stringify(location.state)}</Text> 在页面之间传递数据时的字符串数据

我试图通过评论联系@benawad,我在谷歌和这里搜索过类似的东西,但发现没有相关性。我尝试了一个正则表达式没有成功,但无论如何必须有更好的方法......

代码位于https://github.com/benawad/react-router-native-example/tree/1_advanced

我想过尝试 JSON.parse 字符串化的数据。没有喜悦。我试过 location.state.val 但刚刚得到