我只需要在 LiveScript 中使用 prelude-ls 库,但在 REPL 中不需要。在我的小测试中,我有 4 个文件:
- 主.htm
- 应用程序.ls
- 应用程序.js
- 需要.js
我有require.js
(2.1.15)的最新版本,并在我main.htm
的加载脚本:
<!DOCTYPE html>
<html>
<head>
<script src="./require.js" type="text/javascript"></script>
<script src="./prelude.js" type="text/javascript"></script>
</head>
<body>
</body>
</html>
然后,我去我application.ls
的测试:
require! 'prelude-ls'
[1 2 3] |> prelude-ls.map (* 2)
我的编译命令是:
lsc -cwd $myFilePath
它编译得很好。然后,我去那里得到最终结果,测试并收到以下错误:
Uncaught Error: Module name "prelude-ls" has not been loaded yet for context: _. Use require([])
好吧,我看到这是一个非常常见的错误,它的更正会发生在js文件中,而不是ls中,而且我遵循的链接都没有解决我的问题。我已经在 2 台计算机上尝试过,结果完全一样。
我的最终 js 文件application.js
是:
// Generated by LiveScript 1.2.0
(function(){
var preludeLs;
preludeLs = require('prelude-ls');
preludeLs.map((function(it){
return it * 2;
}))(
[1, 2, 3]);
}).call(this);
请帮助我,如果可能的话。我真的阅读了 livescript 的所有文档,它没有引用它与 prelude-ls 的第一次使用。