未捕获的错误:不能间接使用定义
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...
]
【讨论】:
以上是关于未捕获的错误:不能间接使用定义的主要内容,如果未能解决你的问题,请参考以下文章