Javascript 未处理的承诺拒绝-Firefox

Javascript 未处理的承诺拒绝-Firefox,javascript,firefox,promise,axios,Javascript,Firefox,Promise,Axios,我一直在犯这个错误,我不知道这是为什么。我使用的是最新版本的FF,这段代码在最新版本的Chrome甚至Ie 11中都能正常工作 Unhandled promise rejection Error: Network Error Stack trace: createError@http://localhost:8080/main.js:6075:15 handleError@http://localhost:8080/main.js:5618:14 columnNumber: 15 ​ con

我一直在犯这个错误,我不知道这是为什么。我使用的是最新版本的FF,这段代码在最新版本的Chrome甚至Ie 11中都能正常工作

Unhandled promise rejection 
Error: Network Error
Stack trace:
createError@http://localhost:8080/main.js:6075:15
handleError@http://localhost:8080/main.js:5618:14

columnNumber: 15
​
config: Object { timeout: 5000, xsrfCookieName: "XSRF-TOKEN", xsrfHeaderName: "X-XSRF-TOKEN", … }
​
fileName: "http://localhost:8080/main.js"
​
lineNumber: 6075
​
message: "Network Error"
​
request: XMLHttpRequest { readyState: 4, timeout: 5000, withCredentials: false, … }
​
response: undefined
​
stack: "createError@http://localhost:8080/main.js:6075:15\nhandleError@http://localhost:8080/main.js:5618:14\n"
​
    __proto__: Object { … }

    onUnhandled/</result<
es6.promise.js:101
./node_modules/babel-polyfill/node_modules/core-js/modules/_perform.js/module.exports
_perform.js:3:12
onUnhandled/<
es6.promise.js:95
./node_modules/babel-polyfill/node_modules/core-js/modules/_invoke.js/module.exports
_invoke.js:5
<anonymous>
_task.js:35
run
_task.js:21
listener
_task.js:25
似乎即使他们是一个错误,它仍然调用我的“then”,这导致了问题(尽管仍然是一个重要问题,即当所有其他浏览器都可以通过时,为什么会出现Network错误)


看起来您正在使用生成器函数。希望这与问题无关。你是在兑现承诺,而不是先等待承诺


您是否尝试过添加
.catch(e=>{console.log(e);})
或其他东西来查看拒绝是什么?

是否
post()
返回承诺?如果是这样,您应该执行
response.catch(error=>{…})
。如果没有,就用try/catch来包装代码,因为
try{const response=…}catch(error){…}
我建议您阅读一篇关于承诺的文章:我更新了我的代码,但是它确实返回了一个承诺,并且似乎在.then()中发生了erorr我认为它不会到达那个代码,因为我认为我只提供了“已解析”函数。所以我要解决这个问题,但它仍然不是根本问题。“网络问题”似乎是根本问题。您正在尝试访问“”,这是文件还是终点?否,这是webpack Service设置的位置。它是运行我的前端代码的东西。我应该点击另一个localhost端点,比如localhost:这可能是因为它是https吗?我使用的是Mobx状态树,它有一个叫做“flow”的东西,它的行为类似于async/await,“yield”相当于“await”。让我看看catch是否给了我什么有用的东西。当出现
wait
行为时,错误从使用它的地方抛出,可以使用try/catch进行处理。catch几乎说的是相同的事情“网络错误”,尽管它仍然说它在FF控制台中未处理。
 login: flow(function*(email, password) {
  console.log("login")
  try {
    const response = yield self.rootStore().axios.post(
      "/tokens/auth", {
          email: email,
          password: password,
          grantType: "password",
      }
    );
    return response;
  }
  catch(e){
    console.log(e, "catch")
  }
}),
 login(values.email, values.password).then((response) => {
            console.log("response", response); // this get called. Eventhough in the login flow function the error gets caught.
          }).catch(e => {console.log(e)})