vue中promise的使用解决全局变量的问题
在这里插入代码片
```getDataFun(val, limit, data) {
return this.$axios
.get('/api/admin/user/index', {
params: {
page: val,
cellphone: this.cellphone, //手机号
province: this.province, //省
city: this.city, //市
area: this.area, //区
limit: limit,
reg_time: this.created //时间
}
})
.then((res) => {
// 表格数据
this.jlnum = res.data.data.page.total;
this.pagenum = Math.ceil(this.jlnum / 15); //页数
data.map((item) => {
item.address = item.province + item.city + item.area;
});
return Promise.resolve(res.data.data.list);
});
},
这里中后端请求数据经常会去用data的全局变量存储,但是当我们需要这个数据 再另一个地方使用 而且传参不同请求的数据不同这时候但是我们有不想改变原有的数据显示这是时需要把请求数据return出去
用.then来处理数据\
```css
在这里插入代码片
handleCurrentChange(val) {
this.getDataFun(val, 15, this.tabledata).then((data) => {
this.tabledata = data;
});
},
```这里中保存的数据是局部变量 虽然使用的是data的全局变量但在这个函数外部是空值
变量的作用域确实很蛋疼 ,尤其一些全局变量 会出现莫名其妙的bug