为什么javascript总是无声地失败?

时间:2015-10-09 08:18:30

标签: javascript google-chrome developer-tools

我正在开发一个反应应用程序,我正在使用这个堆栈:

webpack
babel
altjs
react

我正在为浏览器开发。 问题是大多数错误都是默默失败的!例如,我错误地导入了一个没有公开正确功能的资源,但javascript只是失败而不让我知道任何事情!

有没有办法改善浏览器发送错误的方式?

编辑: 抱歉,但我认为这是理所当然的!我正在使用控制台,但这里打印的东西很少! 这是一个例子:

'use strict'

import React from 'react';
import {Route, DefaultRoute, NotFoundRoute} from 'react-router';

export default (
    <Route path="/" handler={AppCointainer}>
      <DefaultRoute handler={Login}/>
      <Route path="login" name="login" handler={Login}/>
      <Route path="signup" name="signup" handler={SignUp}/>
      <Route path="/reset-password" handler={ResetPassword}/>
    </Route>
  );

在这里,我显然错过了导入Login,Signup等组件......但它在浏览器中没有告诉我任何内容!既不是一般错误!

1 个答案:

答案 0 :(得分:2)

您会在浏览器控制台中看到错误。但是,如果您希望获得出现错误的视觉反馈,可以使用onerror处理程序执行此操作:

window.onerror = function (e) {
    // run your custom stuff
    alert("Something went wrong!\n" + e);
};

setTimeout(function () {
  undefined.foo; // make an error appear
}, 100);