0

当我尝试在我的 pwa 中创建用户时,我试图显示通知。为此,我订阅了设置通知的突变,然后调用通知,但没有显示任何内容,控制台上也没有错误。

这就是我想要做的:

export default {
  ...,
  mounted: function() {
    var self = this
    this.$store.subscribe(function(mutation, state) {
      if (mutation === 'usuario/setError') {
        self.$q.notify({
          message: state.usuario.error.mensagem,
          timeout: 3000,
          type: state.usuario.error.sucesso ? 'positive' : 'negative',
          position: 'top'
        })
      }
    })
  }
}

我尝试从 qusar 导入 Notify 并调用 Notify.create 但没有成功。

4

2 回答 2

0

我找到了一个解决方案,而不是使用 subscribe 我可以使用来自 vue 的 watch 并观察计算的变化。这边走:

export default {
 ...,
 computed: {
    error: function() {
      return this.$store.state.usuario.error
    }
  },
  watch: {
    error: function(newError, oldError) {
      console.log(newError)
      this.$q.notify({
        message: newError.mensagem,
        timeout: 3000,
        type: newError.sucesso ? 'positive' : 'negative',
        position: 'top'
      })
    }
  },
  ...
}

于 2018-04-16T23:53:27.730 回答
0

尝试if (mutation.type === 'usuario/setError'),如果这不起作用控制台日志突变以查看类型是什么并使用它。

于 2019-02-01T11:50:06.390 回答