【问题标题】:How do I get real errors with requirejs?我如何使用 requirejs 得到真正的错误?
【发布时间】:2013-10-15 03:00:01
【问题描述】:

我是 requireJS 的新手,我正试图弄清楚为什么我不能得到正常的错误。

我正在使用它,在加载 requirejs 文件之后,但在加载任何模块之前:

requirejs.onError = function (err) {
    console.log(err.requireType);
    if (err.requireType === 'timeout') {
        console.log('modules: ' + err.requireModules);
    }

    throw err;
};

但我仍然收到完全模糊的错误:

Error: script error
http://requirejs.org/docs/errors.html#scripterror @ http://localhost/wampir/lib/require.js:8
"scripterror"

有没有办法让这个给我实际的错误和行号?

我见过this question,但我从那里尝试了几个答案,但它们并没有改变任何东西......

【问题讨论】:

  • 他们可怕的错误记录困扰了我一段时间。我真的不明白为什么它不能说像error loading script name blah/foo which was searched for at blah/foo.js
  • 好吧,我就用browserify。我想试试requirejs。谢谢
  • 您和@AdamRackis 能否详细说明您遗漏了哪些错误?模块本身的加载失败,或者这些模块的javascript中的错误?对于前者,我在控制台窗口中得到了不错的 404,至少在最新的 Chrome 和 RequireJS 2.1.8 上
  • @explunit,问题是我不知道要找什么。我的 IDE 进行了 AST 分析,它没有发现代码中的任何错误或无法解析的路径。 “脚本错误”的 RequireJS 文档说这可能是语法错误或未捕获的错误。不过,它不是 404。无论如何,如果您想发布答案,我会接受。我已经回到 Browserify,现在一切正常。我想我在其中一个文件中遗漏了一个“新”。
  • 嗯,这就是那个错误的意思:requirejs.org/docs/errors.html#scripterror

标签: javascript error-handling requirejs


【解决方案1】:

删除“超时”检查。除非问题恰好是超时,否则它会阻止您查看遇到问题的模块。

requirejs.onError = function (err) {
    console.log(err.requireType);
    console.log('modules: ' + err.requireModules);
    throw err;
};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-07-31
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-17
    • 1970-01-01
    相关资源
    最近更新 更多