未捕获的错误:不能间接使用定义

Posted

技术标签:

【中文标题】未捕获的错误:不能间接使用定义【英文标题】:Uncaught Error: define cannot be used indirect 【发布时间】:2016-07-06 10:39:41 【问题描述】:

我正在使用 webpack 和 babel 在我正在制作的 node express React 应用程序中转换我的 es6/jsx 文件。在我包含 google spreadsheet npm 模块并尝试将其导入我的项目之前,一切都很好。

我收到错误Uncaught Error: define cannot be used indirect,但导入的模块中没有定义语句。当 webpack 打包我的文件时,这个错误只显示在浏览器中,而不是我的控制台中,并且完全停止在页面上呈现任何内容。

我认为这与 AMD/Commonjs 有关,但我太缺乏经验,无法确定,或者如果是这种情况该怎么办。任何帮助将不胜感激

【问题讨论】:

Google 电子表格导入 async ( github.com/theoephraim/node-google-spreadsheet/blob/master/… ),而后者又使用 define ( github.com/caolan/async/blob/… ) 解决方法:在node_modules/async/async.js评论此行 @BobSponge 注释掉哪一行? github.com/caolan/async/blob/… 谢谢@BobSponge,很遗憾没用。仍然有同样的错误,这个帖子似乎帮助了很多人:github.com/webpack/webpack/issues/138不是我,但不幸的是 【参考方案1】:

只是在黑暗中拍摄,但我在不同的库中遇到了同样的错误。谷歌电子表格也可能依赖于 json-schema。 试着把它放在你的 webpack 配置中:

module: 
  noParse: /node_modules\/json-schema\/lib\/validate\.js/, // <-- This
  loaders: [
    //all your loaders...
   ]
  

【讨论】:

以上是关于未捕获的错误:不能间接使用定义的主要内容,如果未能解决你的问题,请参考以下文章

获取有关“间接级别不同”的错误

如果未通过,Pytest 会跳过寻找间接参数吗?

Android & 间接引用的 jars = BAD?

C 语言指针间接赋值 ( 间接赋值三要素 | 间接赋值 使用的三种场景 )

不能从调试 dll 很好地导入间接 Typelib

MSTest Visual Studio 2015:未找到测试容器直接或间接引用的程序集或模块“xxxxxxx”