当我使用pulp build -O -t html/main.js
然后pulp build -O -I test -m Test.Main -t html/testmain.js
(即构建主要和测试)时,我得到两个不同的 js 输出。在前一种情况下,格式为
// Generated by psc-bundle 0.8.2.0
var PS = { };
(function(exports) {
// Generated by psc version 0.8.2.0
"use strict";
var Prelude = require("../Prelude");
var Control_Monad_Eff = require("../Control.Monad.Eff");
exports["main"] = main;
})(PS["Main"] = PS["Main"] || {});
PS["Main"].main();
请注意要求。在后一种情况下,根本没有要求
// Generated by psc-bundle 0.8.2.0
var PS = { };
(function(exports) {
/* global exports */
"use strict";
exports.concatArray = function (xs) {
return function (ys) {
return xs.concat(ys);
};
};
exports.showNumberImpl = function (n) {
/* jshint bitwise: false */
return n === (n | 0) ? n + ".0" : n.toString();
};
})(PS["Prelude"] = PS["Prelude"] || {});
(function(exports) {
// Generated by psc version 0.8.2.0
"use strict";
var $foreign = PS["Prelude"];
var Semigroupoid = function (compose) {
this.compose = compose;
};
这两个例子都是缩短的,但重点是第一次使用require,第二次没有使用。问题是由于此错误,我无法在浏览器中使用 require 运行该版本
ReferenceError:未定义要求
当我将 require.js 包含到页面中时,出现此错误
错误:尚未为上下文加载模块名称“../Prelude”:_。使用 require([]) http://requirejs.org/docs/errors.html#notloaded
因此我的问题是,如何在浏览器中运行第一个案例。