前提:1、方法内部需要使用到state的状态数据2、该方法要多次调用或者循环调用3、这个方法肯定不能写在action里面,它不修改state里的状态,只是利用state数据和参数,做一些比较计算,并返回新结果我现在的做法是,在外部定义这个公共函数,然后每次都把state作为参数传进去export function 函数名(state, 其他参数){
//实现
}这样虽然能实现我的意图,但是我总感觉不妥当呢?请问有没有更好的做法。
3 回答
慕工程0101907
TA贡献1887条经验 获得超5个赞
公共函数文件可以直接
import store from '@/store'export function func1() { const state1 = store.state.module_name.state1 return state1 }
一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
你可以在main.js中注册一个全局方法
Vue.prototype.someMethod = function(state){ // do something... }
然后在组件内调用
this.someMethod(state)
一般来说这种方式注册的都是使用频次很高的方法, 如处理后台返回的结果的函数、自己写的formatTime方法
添加回答
举报
0/150
提交
取消