使用RequireJS加载JavaScript库会导致“ReferenceError:exports not defined”

时间:2016-01-22 11:57:27

标签: javascript node.js reactjs requirejs webjars

我有一个Scala / Play项目,它在build.sbt中从http://www.webjars.org/npm加载了React-dependencies,如下所示:

libraryDependencies ++= Seq(
    "org.webjars.npm" % "react" % "0.14.2",
    "org.webjars.npm" % "sweetalert-react" % "0.4.4",
)

为这样的JavaScript加载了React:

requirejs.config({"paths":{"react":["/webjars/react/0.14.2/dist/react-with-addons"]}});

这是从WebJars加载的the actual react-with-addons.js-file。对于React来说,只需使用路径字符串加载它就足够了,而且效果很好。然而,对于sweetalert反应加载它以相同的方式导致一些错误。这是加载的the actual SweetAlert.js-file。该文件加载如下:

requirejs.config({paths:{"sweetalert-react":["/webjars/sweetalert-react/0.4.4/lib/SweetAlert"]});

尝试在.jsx文件中使用它会导致以下错误:

define(['react', "sweetalert-react"], function (React, SweetAlert) {
   ...
}

Uncaught ReferenceError: exports is not defined; http://localhost:9000/webjars/sweetalert-react/0.4.4/lib/SweetAlert.js; 3; 1; ReferenceError: exports is not defined

我应该如何配置requirejs.config以使SweetAlert.js正常工作?我想应该使用RequireJS's shim -API以某种方式进行配置,但我一直无法正确配置,因为我仍然会收到错误,尽管我过去没有使用过那么多的问题。 Sweetalert-react有几个从sweetalert到React的依赖,但错误来自第3行,只有

exports.__esModule = true;

感谢您的回答:)

0 个答案:

没有答案