e.$OneSignal.on 不是 Nuxtjs PWA 的函数 - OneSignal
e.$OneSignal.on is not a function for Nuxtjs PWA - OneSignal
我正在使用 @nuxtjs/pwa 和 @nuxtjs/onesignal。
我在安装时遇到 subscriptionChange 事件的侦听器问题。
它与 localhost 一起工作得很好,
问题发生在 production.
mounted() {
let self = this;
this.$OneSignal.push(() => {
self.$OneSignal.on('subscriptionChange', (isSubscribed) => {
if (isSubscribed) {
self.$OneSignal.getUserId().then((deviceId) => {
self.addDeviceId(deviceId)
});
}
});
});
}
生产错误:
谢谢你和感激。
幸运的是,几个小时前我遇到了这些问题,您需要使用全局 window 方法访问 Onesignal
window.OneSignal = window.OneSignal || []
window.OneSignal.push(() => {
window.OneSignal.on('subscriptionChange', (isSubscribed) => {
if (isSubscribed) {
window.OneSignal.getUserId().then((deviceId) => {
self.addDeviceId(deviceId)
});
}
});
})
window.OneSignal = window.OneSignal || []
window.OneSignal.push(() => {
window.OneSignal.getUserId(async (userId) => {
await this.$store.dispatch(
'Authenticated/overview/updatePushID',
userId
)
})
})
尽管在本地和生产环境中这对我都有效
我正在使用 @nuxtjs/pwa 和 @nuxtjs/onesignal。 我在安装时遇到 subscriptionChange 事件的侦听器问题。 它与 localhost 一起工作得很好, 问题发生在 production.
mounted() {
let self = this;
this.$OneSignal.push(() => {
self.$OneSignal.on('subscriptionChange', (isSubscribed) => {
if (isSubscribed) {
self.$OneSignal.getUserId().then((deviceId) => {
self.addDeviceId(deviceId)
});
}
});
});
}
生产错误:
谢谢你和感激。
幸运的是,几个小时前我遇到了这些问题,您需要使用全局 window 方法访问 Onesignal
window.OneSignal = window.OneSignal || []
window.OneSignal.push(() => {
window.OneSignal.on('subscriptionChange', (isSubscribed) => {
if (isSubscribed) {
window.OneSignal.getUserId().then((deviceId) => {
self.addDeviceId(deviceId)
});
}
});
})
window.OneSignal = window.OneSignal || []
window.OneSignal.push(() => {
window.OneSignal.getUserId(async (userId) => {
await this.$store.dispatch(
'Authenticated/overview/updatePushID',
userId
)
})
})
尽管在本地和生产环境中这对我都有效