e.$OneSignal.on不是Nuxtjs PWA的函数--OneSignal。

问题描述 投票:3回答:1

我用的是 @nxtjspwa 与...一起 @nxtjsonesignal.我有一个问题,监听者对 订阅变更 掛載的事件.它的工作非常好與 本地主机问题是发生在 生产.

mounted() {
  let self = this;
  this.$OneSignal.push(() => {
  self.$OneSignal.on('subscriptionChange', (isSubscribed) => {
    if (isSubscribed) {
      self.$OneSignal.getUserId().then((deviceId) => {
        self.addDeviceId(deviceId)
      });
     }
    });
  });
}

关于生产错误。enter image description here

谢谢你,谢谢

vue.js nuxt.js progressive-web-apps onesignal
1个回答
1
投票
window.OneSignal = window.OneSignal || []
    window.OneSignal.push(() => {
      window.OneSignal.getUserId(async (userId) => {
        await this.$store.dispatch(
          'Authenticated/overview/updatePushID',
          userId
        )
      })
    })

这个工作对我来说,虽然本地和生产上的工作


1
投票

幸运的是,我在几个小时前就遇到了这些问题,你需要使用全局窗口方法访问Onesignal。

window.OneSignal = window.OneSignal || []
window.OneSignal.push(() => {
  window.OneSignal.on('subscriptionChange', (isSubscribed) => {
    if (isSubscribed) {
      window.OneSignal.getUserId().then((deviceId) => {
        self.addDeviceId(deviceId)
      });
    }
  });
})
© www.soinside.com 2019 - 2024. All rights reserved.