如何解决尝试使用React Native 0.63设置Firebase时出错
我是本机和Firebase的新手,正在尝试创建一个使用Firebase在iOS内发送后台通知的应用。
运行我的应用程序时,似乎收到以下错误消息,并且我的应用程序无法运行。
TypeError:(0,_app2.messaging)不是一个函数。 (在'((0,_app2.messaging)()'中,'(0,_app2.messaging)'未定义)
这是我的firebase代码。
import {name as appName} from './app.json';
import {AppRegistry} from 'react-native';
import {messaging} from '@react-native-firebase/app';
requestUserPermission = async () => {
const authStatus = await messaging().requestPermission();
const enabled =
authStatus === messaging.AuthorizationStatus.AUTHORIZED ||
authStatus === messaging.AuthorizationStatus.PROVISIONAL;
if (enabled) {
console.log('Authorization status:',authStatus);
}
};
// Register background handler
messaging().setBackgroundMessageHandler(async (remoteMessage) => {
console.log('Messaage handled in the background!',remoteMessage);
});
HeadlessCheck = ({ isHeadless }) => {
if (isHeadless) {
// App has beeen launched in the background by iOS,ignore
return null;
}
return <App />;
}
AppRegistry.registerComponent(appName,() => HeadlessCheck);
由于我是Firebase的新手,所以我可能在编写Firebase代码时错了,我仍然不确定自己在做什么,只是在尝试遵循一些在线教程。
我用谷歌搜索了这个问题,但似乎没有人遇到这个问题。我试图删除node_modules文件夹并再次运行yarn,但这不能解决问题。
解决方法
似乎不存在消息传递,我注意到您正在从@react-native-firebase/app
导入消息传递。遵循文档(https://rnfirebase.io/messaging/usage)似乎需要另一个模块。
安装消息传递模块:
# Install the messaging module
yarn add @react-native-firebase/messaging
# If you're developing your app using iOS,run this command
cd ios/ && pod install
导入messaging
以供使用
import messaging from '@react-native-firebase/messaging';
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。