GHCJS:如何使用与npm一起使用的JS库

时间:2018-03-02 01:51:10

标签: reactjs haskell npm material-design ghcjs

我正在使用lts-6.30堆栈react-flux来构建前端应用。灵感来自this post,我决定使用material-uiindex-dev.html。我在我的index.html中添加了React的CDN链接,在使用repl时添加了configured GHCJSi以使用自定义index-dev.html。(React的CDN链接也包含在{ {1}})

但是,对于material-ui-nextofficial installation method是使用NPM。它们不提供CDN链接。那么如何在GHCJS项目中使用这个库呢?我认为以下其中一项应该有效:

  • 使用jsDelivr提供的CDN link。 (虽然这个链接不起作用)
  • 找到一些方法来捆绑material-ui-next并将其放入cabal的js-sources字段中,以便在构建时将其与我们的应用相关联。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

在材料-ui的package.json中,脚本build:umd:prodbuild:umd:dev可用于构建程序包的UMD捆绑包。因此,您可以使用CDN link提供的unpkg

即使material-ui没有声明对react-transition-group的对等依赖关系,它也希望react-transition-group/TransitionGroup存在。因此,我们必须在<{1}}

的链接之前添加以下代码
material-ui

我在<script crossorigin="anonymous" src="https://unpkg.com/react-transition-group@2.2.1/dist/react-transition-group.js"></script> <script> window["react-transition-group/TransitionGroup"] = ReactTransitionGroup.TransitionGroup; </script> 的github存储库上创建了一个问题,有关详细信息,请参阅that issue