关于promise的疑问


export function httpInterceptorsGet(url, params, str="") {
  return new Promise((resolve, reject) => {
    main.V_this.$http
      .get(main.V_this.host(url), params)
      .then(res => {
        if (res.body.state != "1") {
          let backjson = { state: res.data.state, msg: res.data.msg };
          main.V_this.backLogin(backjson);
        }
        resolve(str == "body" ? res.body : res.body.results);
      })
  });
}

请问一下这段promise代码对吗?按照我的理解,resolve应该是在.then之前,这里的resolve是参数中的resolve??

阅读mdn中的promise就懂了