我得到了vujes typescript项目,在vuexstore 我得到了类似的东西:

async getUserProfile ({ dispatch, commit }: any) {}

我不想要any,因为这很糟糕,而且你在编辑器中没有帮助/自动完成.我找到了import { Dispatch, Commit } from "vuex";,但是如何把信息传给{ dispatch, commit }: any

推荐答案

你可以使用ActionContext<S, R>,就像Vuex一样:

getUserProfile( context: ActionContext<S, R>) {}

其中SStateRRootState.

然后根据上下文分别调用dispatchcommit:

 context.dispatch('action')
 context.commit('mutation')

Vue.js相关问答推荐

在 v-for 中定义变量有什么问题吗?

如何在 vue 组件中定义变量? (Vue.JS 2)

如何解决 Vue.js 中的相邻 JSX 元素必须包含在封闭标记中问题

vuejs:将props传递给javascript中的组件?

Vue index.html favicon 问题

实现登录命令并访问 vuex 存储

Vue.js 中的 mount挂载是什么意思?

在 vue-router 中带有路由的 Vuejs2 模态

Vue 和 TypeScript 所需的props

Vuetify - 如何在 v-data-table 中单击时突出显示行

vue-test-utils:无法覆盖属性 $route,这通常是由于插件将该属性添加为只读值

vue js 中的 process.env.BASE_URL 是什么?

Select 下拉列表中的复选框后如何清除 v-autocomplete(多个)搜索输入?

为 Vue 组件动态添加属性

异步api调用后如何使用vuex getter

Vuetify - 如何进行分页?

检测 Vue-Router 导航Guards中的后退按钮

VueJS 2 + ASP.NET MVC 5

Vuejs 组件等待 facebook sdk 加载

如何在 VeeValidate 中自定义错误信息(字段名称)?