react-native - react-native 在 fcm 通知点击上打开特定屏幕
问题描述
我搜索了堆栈溢出,没有找到任何东西。
这就是如何处理我的点击
export const App = () => {
messaging().setBackgroundMessageHandler(async remoteMessage => {
const {data} = remoteMessage;
if (data.action == 'open_map') {
navigate('RouteMap', {data: data.eventsteamID});
}
if (data.action == 'open_home') {
navigate('MainNavigator');
}
console.log('Message handled in the background!', remoteMessage);
});
return (
<PaperProvider>
<LocationProvider>
<AuthProvider>
<RootNavigator />
</AuthProvider>
</LocationProvider>
</PaperProvider>
);
};
我创建了此服务,因为在附加 RootNavigator 之前导航不可用
import * as React from 'react';
export const isMountedRef = React.createRef();
export const navigationRef = React.createRef();
export function navigate(name, params) {
if (isMountedRef.current && navigationRef.current) {
navigationRef.current.navigate(name, params);
} else {
console.log('Navigation Failed!');
}
}
任何人都有解决方案。
这是我的 fcm 回复
编辑:=> 相同的代码在 android 上工作
解决方案
推荐阅读
- php - Laravel 5.6 缓存存储了数千个值,都称为 :timer
- go - 如何为对象创建结构并在 golang 中获取值?
- haskell - printtype函数中的“代理a”是什么?
- java - 正则表达式密码至少一个字符来自三个 3 类别
- c++ - 我在 main 中的 argv[] 转换为整数时总是返回 0
- python - 熊猫:合并数据框但对重叠列求和
- graphql - 使用 apollo angular GraphQL 在 Drupal8 中添加用户
- c++ - 插入元素 (TinyXml)
- angular - 角度 6 中左侧菜单之前的页面加载
- python - 计算欧几里得距离时 sklearn.metrics.pairwise_distances_argmin_min 的奇怪结果