问题标签 [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 投票
0 回答
185 浏览

react-native - 将 React Router (native) 用于 React native?

我正在使用通用应用程序,并想尝试用于 Web 和本机的 React 路由器。

问题是react-router-native当路线改变时没有动画。

我正在考虑覆盖history.push,以便它实际上启动一个新的activity(android)或viewcontroller(ios)并放在当前屏幕的顶部。

新的活动将path作为道具传递给 RN,新的 RN 将根据path

我不确定这是否是明智的做法

  • 关于反应导航

我知道有一个react navigation,它也支持网络。

我可以选择react navigation是否从头开始我的项目并使用react navigation. 我不确定是否可以将反应导航添加到我现有的网络/应用程序项目中

0 投票
1 回答
933 浏览

react-native - 使用 React-Router-Native 在 React Native 中从 Axios 拦截器(组件外部)重定向到查看组件

我正在开发一个服务类来创建一个 Axios 实例(在 React Native 中),我在其中使用一些拦截器来注入 JWT 令牌以针对 API 进行身份验证。

当应用检测到access token过期时,自动使用refresh token来同时请求新的令牌和新的刷新令牌。

问题是刷新令牌由于不活动而过期。

当刷新令牌过期时,我想将用户重定向到登录视图组件。

考虑到服务类是无状态的并且不关心它是从哪个组件调用的,我需要做什么才能重定向到我的登录视图组件?

这是我到目前为止所拥有的:

环境:

PS:这是一个与此非常相似的问题,但我需要一个使用 React Router Native 的解决方案。

编辑1:

我已经尝试使用以下"history": "^4.10.1"软件包,但没有成功:

0 投票
1 回答
72 浏览

react-native - react-native中可以嵌套路由吗?

react-router-native用于路由。通常,当将新屏幕route推送到history当前屏幕时,将卸载并安装新屏幕。但是根据文档,嵌套路由在 web 中是可能的。他们没有提到任何关于移动的事情。

我只想知道是否可以使用嵌套路由,react-native因为我希望一次激活两条路由。

谢谢你。

0 投票
1 回答
1688 浏览

react-native - 如何解决 Module parse failed: Unexpected token (11:9) react-router-native

我使用 yarn 安装了 react-native-router 并且只是在导入 NativeRouter

这就是我从 react-router-native import { NativeRouter, Route, Link } from "react-router-native" 导入的方式;

这是我得到的错误

0 投票
1 回答
134 浏览

reactjs - 在链接标签中使用 component={TouchableOpacity} 时收到错误

我正在尝试创建一个导航栏,其中包含链接到不同页面的选项卡。当我使用时,我目前已经让它工作了

然而,当我长按按钮时,我得到一个黑色的填充物。我找到了一种解决方法

黑色填充不再存在,但是当我使用此方法时出现错误:未定义不是对象(正在评估“event.defaultPrevented”)。

如果您需要更多信息,请告诉我,感谢您的帮助。

0 投票
1 回答
388 浏览

javascript - 反应路由器本机错误,意外令牌

**在上面的代码中,我使用的是 firebase 身份验证。如果用户已登录,那么我需要将应用程序路由到其他应用程序组件,将应用程序路由到登录组件。我使用 react-router-native 作为 npm 包来路由这里。但我收到错误为“D:/csearch-client/csearch-client/node_modules/react-router-native/NativeRouter.js 11:9 模块解析失败:意外令牌 (11:9) 您可能需要适当的加载器为了处理这个文件类型,目前没有配置加载器来处理这个文件。见https://webpack.js.org/concepts#loaders | */ | function NativeRouter(props) {

返回 <MemoryRouter {...props} />; | } |"**

0 投票
0 回答
121 浏览

javascript - 在使用 Redux 和 React Router Native 时,有没有更好的方法来测试 React Native 类组件功能?

我正在尝试在 Jest 中为我正在处理的 React Native 项目编写测试。我正在使用 redux 和 react-router-native,如果不将它们包装在 Provider 和 MemoryRouter 中,我就无法为测试渲染组件。我正在尝试测试的组件连接到我的 Redux 存储并使用该withRouter功能来访问路由器道具(历史、匹配等)。

我最终得到了这个:

这对于快照测试很有效,但是当我尝试测试我的类组件中的函数时遇到了麻烦<Results />。我尝试使用.getInstance(),但这返回 null 因为 Provider 是父级并且它是一个功能组件。

我终于能够在渲染时<Results />使用组件,但结果很难看。.root在我开始之前,我必须挖掘几个级别的孩子。我想知道是否有更好的方法来测试必须包装在 Provider 和 MemoryRouter 组件中才能呈现的类组件上的函数。

0 投票
2 回答
45 浏览

javascript - 如何在 react-router-native 中通过链接传递值或对象?

在上面的代码中,它是在 react.js 中使用 react-router-dom 发送带有链接的对象的示例。目前我正在开发一个 react native 应用程序,为此,我使用 react-router-native( https://reactrouter.com/native/guides/quick-start ) 作为我的路由器。以及如何在本机反应中使用此 NPM 包传递带有链接的对象

0 投票
1 回答
40 浏览

reactjs - Access history with pages created through render()

I am attempting to implement a multi-language option in my React Native application. I'm using react-router to navigate the page. The approach I am attempting involves passing the current locale to the components as a prop.

App.js

WelcomePage.js

This seems to work for the most part, but crashes on history.push(), with the error message

undefined is not an object (evaluating 'history.push')

From this it seems apparent to me that it is not possible to access the history prop in this scenario, but why is that? And how can I fix my issue? Perhaps my fundamental approach is flawed, in which case I would appreciate any suggestions for improvements. Thank you.

0 投票
0 回答
327 浏览

reactjs - 在 Expo CLI 中 react-router-native 给出错误 - React Native

我已经使用 npm 在我的项目中安装了 react-router-native,但我收到一条错误消息:

E:/myapp/node_modules/react-router-native/NativeRouter.js, 11:9 Module parse failed: Unexpected token (11:9).... 你可能需要一个合适的加载器来处理这个文件类型,目前没有加载器配置为处理此文件。见 https://webpack.js.org/concepts#loaders

包.json:

react-router-native 给出错误的文件(NativeRouter.js):