为了账号安全,请及时绑定邮箱和手机立即绑定

ts中this的问题

ts中this的问题

慕桂英546537 2019-01-02 17:09:00
在ts文件中本来是要对错误进行一个拦截,然后统一弹出一个message的,但是在这里调用this 会报错。// 添加响应拦截axiosTokenInstance.interceptors.response.use((response: any) => {  if (response.data.statusCode !== 0) {    this.$Message.error('haha');   } else {    return response.data;   } },  (error) => {    if (error.response) {      const { message } = error.response.data;      return Promise.reject(new Error(message));     }    return Promise.reject(error);   } );然后修改了代码const that = this;// 添加响应拦截axiosTokenInstance.interceptors.response.use((response: any) => {  if (response.data.statusCode !== 0) {     that.$Message.error('haha');   } else {    return response.data;   } },  (error) => {    if (error.response) {      const { message } = error.response.data;      return Promise.reject(new Error(message));     }    return Promise.reject(error);   } );修改之后外面的this又被标红了[ts] "this" 隐式具有类型 "any",因为它没有类型注释。 [2683]谁能说下如何解决???/
查看完整描述

1 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

function outter(this: any) {    const that = this;    
    // 添加响应拦截
    axiosTokenInstance.interceptors.response.use((response: any) => {      if (response.data.statusCode !== 0) {
        that.$Message.error('haha');
      } else {        return response.data;
      }
    },      (error) => {        if (error.response) {          const { message } = error.response.data;          return Promise.reject(new Error(message));
        }        return Promise.reject(error);
      }
    );
}


查看完整回答
反对 回复 2019-01-02
  • 1 回答
  • 0 关注
  • 3086 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信