【发布时间】:2020-08-09 14:07:16
【问题描述】:
我正在使用 Vuex 来存储一些数据。我有一个登录我的应用程序的操作。当请求成功时,我想显示一个通知(iziToast 通知),但我不知道实现它的最佳方法是什么。
1.- 我应该从 Vuex 返回一个承诺,然后处理来自我的 Vue 组件的数据吗?
2.- 我可以使用 Vuex 的库 (iziToast) 吗?或者这是一种反模式方式?我该怎么做?
这是我的 Vuex 操作:
loginUser({ commit, state }, user) {
axios.post("/api/v1/user/login", {
email: user.email,
password: user.password
}).then(response => {
// Show notification here
}).catch(error => {
})
}
【问题讨论】:
-
我用vuex创建了自己的“toast”类型模块,然后在收到响应后调用它。
-
你如何打开它?我的意思是,您必须将库导入模块吗?
-
不,你调用 dispatch 方法。这就是我所做的 dispatch('displaySnack', {message: 'Successfully added fee', color: 'success'}, {root: true});
-
好的,但是如何使用像 iziToast 这样的外部库呢?如何将其导入模块并在 action 中使用它?
-
我以前从未使用过它。阅读文档,它应该可以帮助您安装它。