首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >e.$OneSignal.on不是Nuxtjs PWA - OneSignal的函数。

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

Stack Overflow用户
提问于 2020-04-19 14:30:18
回答 2查看 620关注 0票数 3

我使用@nuxtjs/onesignal.和@nuxtjs/pwa在挂载的subscriptionChange事件的侦听器上,我遇到了问题。它在本地主机中运行得很好,这个问题发生在production上。

代码语言:javascript
复制
mounted() {
  let self = this;
  this.$OneSignal.push(() => {
  self.$OneSignal.on('subscriptionChange', (isSubscribed) => {
    if (isSubscribed) {
      self.$OneSignal.getUserId().then((deviceId) => {
        self.addDeviceId(deviceId)
      });
     }
    });
  });
}

关于生产错误的

谢谢,谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-24 14:09:15

代码语言:javascript
复制
window.OneSignal = window.OneSignal || []
    window.OneSignal.push(() => {
      window.OneSignal.getUserId(async (userId) => {
        await this.$store.dispatch(
          'Authenticated/overview/updatePushID',
          userId
        )
      })
    })

这对我来说,无论是在本地还是在生产上都是如此。

票数 2
EN

Stack Overflow用户

发布于 2020-04-24 02:26:46

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

代码语言:javascript
复制
window.OneSignal = window.OneSignal || []
window.OneSignal.push(() => {
  window.OneSignal.on('subscriptionChange', (isSubscribed) => {
    if (isSubscribed) {
      window.OneSignal.getUserId().then((deviceId) => {
        self.addDeviceId(deviceId)
      });
    }
  });
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61305993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档