react-native - react-native 如何从路由目录在特定屏幕上导航?
问题描述
我正在使用 react-navigation 库中的 react switch navigator。我创建一个单独的文件 router.js 并调用我的 App.js。现在我正在使用 react-native-firebase 并且我需要从 app.js 导航到特定屏幕。如果有人有想法,请告诉我这是我的代码:
应用程序.js:
import Router from "./src/Router";
class App extends Component<Props> {
render() {
return (
<Router />
);
}
}
export default App;
路由器.js
const AppSwitchNavigator = createSwitchNavigator({
InitialScreen: {
screen: InitialScreen
},
Login: {
screen: Login
},
Forgot: {
screen: Forgot
},
SuccessMessage: {
screen: SuccessMessage
},
App: AppStackDelivery,
AppR: AppStackRecipient,
}, {
initialRouteName: 'InitialScreen'
});
const Router = createAppContainer(AppSwitchNavigator);
export default Router;
从推送通知中,我收到了 id,我需要导航到详细信息屏幕,但我的路由器或初始屏幕没有任何信息,请任何有想法的人分享。
解决方案
您应该使用深层链接。并去你想要的路径onNotification
。
例子
handleNotification () {
const path = "chat/Eric";
const prefix = Platform.OS === 'android'
? 'myapp://myapp/'
: 'myapp://'
const url = `${prefix}${path}`;
Linking.openURL(url).catch(err => console.error(err));
firebase.messaging().setBadgeNumber(0);
}
推荐阅读
- javascript - 如何从 async.eachOfSeries 函数将值返回给主函数?
- powershell - 如何使用单个 powershell 脚本打开和关闭任务?
- helm-tls - Helm 图表可获取但不可搜索
- c# - WPF - 更新绑定数据时 DataGrid 不更新
- javascript - Snowpack 嵌套 HTML
- python - Python Pandas Dataframe 计算每个类别的选定列的平均值并作为数据框返回?
- java - 在 Spring Boot 中使用 JPA 从具有 OneToMany 关系的实体中删除对象
- python - TensorFlow - 无法将字符串转换为浮点错误?
- react-native - 每次反应原生的另一个值发生变化时如何更新表单上的所有其他值
- java - 先按 X 再按 Y 对 2d 矩阵进行排序