请教大神,Vue+Vuex store的modules下,如何让this指向vue实例?
 发布于 8 年前  作者 TheSixth  10986 次预览  最后一次回复是 8 年前  来自 问答 

QQ图片20170629153057.png

QQ图片20170629153131.png

$Alert是自定义的一个插件,首页可以正常使用!

12 回复
ideapad460

出错提示难道不是你单词打错了?

wocaatm

为什么要在这里调这个方法。不能在提交mutations的后在吃components里调么。。actions返回promise对象。我一般都说这么来的 --采用Cnode VueJs

kurten

编辑器不错。。。

TheSixth

@ideapad460 那个是故意那么写的 代码没错 用了iView 框架 已经有了一个Alert 方法了

TheSixth

@wocaatm 刚入手vue 还不太熟 vuex的 mutations 不是干这事儿的吗 ?

TheSixth

@kurten VS code 刚用不就 还不错

MiYogurt

vuex 与 vue 是分开的吧,你在 vue 里面用 vuex 的时候,明显是通过 mapXXXXX 添加到 this 上面去的。怎么可能在 vuex 里面有 this 指向 vue 呢。而且你在管理状态的逻辑里面写 UI 逻辑,你觉得合适吗?

MiYogurt

强行弄得话,从 index.js 里面导吧

mrtanweijie

哈哈,我们之前也遇到类似的问题,把vue实例放到window对象下

window.vue = new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
 window.vue.$Alert.info('')
TheSixth

@MiYogurt 刚开始 还不太熟 接口是在action里面调用的 然后commit对应的mutation 我是想在mutation中调用一个全局的提示组件 所以用this

kidbai

actions返回一个promise以及使用mapActions在vue实例中做好映射,就可以在vue实例中做你想做的UI操作了。别在管理状态中做UI处理…