主要解决挂载一个需要调用接口的方法,但是需要同步接收其返回值再往下进行。
一、挂载公共方法
1、可以直接在main.js挂载全局方法
Vue.prototype.msgSuccess = function (msg) {
this.$message({ showClose: true, message: msg, type: "success" });
}
2、也可以在main.js里引入其他文件的方法再挂载成全局方法
import {getAreaTree} from "@/utils/ruoyi";
Vue.prototype.getAreaTree = getAreaTree
二、同步获取方法返回值
这个方法是先全局挂载了另外两个方法,然后调用了这两个接口同步获取其返回值。
需要注意的是返回的时候 如果要返回的值在某个方法内,要在该方法前也加上return
不然获取不到返回的值 (在这里爬坑爬了半天)。
export async function getAreaTree(){
return this.getUserProfile().then(response => {
if (response.code === 200) {
console.log("区域id",response.data.dept.areaId)
var query={
code:response.data.dept.areaId
}