私は vue-native と vuejs が初めてで、それらを使ってアプリケーションを作成したいと考えています。アプリにプッシュ通知を追加したい。このチュートリアルを使用してプッシュ通知を追加してテストしましたが、このエラーが発生しました
作成されたフックのエラー:「TypeError: this.registerForPushNotificationsAsync は関数ではありません。('this.registerForPushNotificationsAsync()' では、'this.registerForPushNotificationsAsync' は未定義です)」
app.vue ファイルにこのようなコード ブロックをプロジェクトに追加します。
<template>
<view class="container">
<text class="text-color-primary">{{JSON.stringify(notification.data)}}</text>
</view>
</template>
<script>
export default {
data: function() {
return {
notification: {}
};
},
created: function() {
this.registerForPushNotificationsAsync();
this._notificationSubscription = Notifications.addListener(
this._handleNotification
);
},
methods:{
_handleNotification: function(notification) {
this.notification = notification;
},
registerForPushNotifications: async function() {
const { status: existingStatus } = await Permissions.getAsync(
Permissions.NOTIFICATIONS
);
let finalStatus = existingStatus;
// only ask if permissions have not already been determined, because
// iOS won't necessarily prompt the user a second time.
if (existingStatus !== "granted") {
// Android remote notification permissions are granted during the app
// install, so this will only ask on iOS
const { status } = await Permissions.askAsync(
Permissions.NOTIFICATIONS
);
finalStatus = status;
}
// Stop here if the user did not grant permissions
if (finalStatus !== "granted") {
return;
}
// Get the token that uniquely identifies this device
Notifications.getExpoPushTokenAsync().then(token => {
console.log(token);
});
}
}
};
</script>
私はどこで間違っていますか?