丑陋的定义没有定义
Uglified define not defining
本文关键字:定义 更新时间:2023-09-26
我使用r.js来丑化和连接我的js文件。一些函数出现在修改后的文件中,如(NB)。这是为了可读性而美化的):
!function(root, factory) {
if ("object" == typeof exports) {
{
var backbone = require("backbone");
require("marionette");
}
dust = require("dust");
module.exports = factory(backbone, dust);
} else if ("function" == typeof define && define.amd) {
define("marionette-dust", [ "backbone", "dust", "marionette" ], factory);
console.log(requirejs.s.contexts._.config);
}
}(this, function(Backbone, dust) {
alert("in");
Backbone.Marionette.Renderer.render = function(template, data) {
console.log("BBD: ", arguments);
var html;
console.log("dust: ", dust);
dust.render(template, data, function(err, out) {
console.log("out", out);
html = out;
});
return html;
};
console.log("Backbone", Backbone);
});
如果我加载页面,然后测试:
require.defined("marionette-dust")
则返回时为未加载。如果我把断点放进去,那么基本上它会进入amd部分(else-if块),并且定义是存在的,但它没有定义,工厂部分永远不会执行…
要清楚:第一个控制台日志显示requires对象(没有加载模块);其他的都不会被执行,因为它们在工厂函数中…我已经在这里工作了几个小时了,我认为这与在r.js中转换包装器有关。require.defined是我在测试模块是否已定义后输入自己的东西-它返回false…
Repo可在:https://github.com/jmsherry/birds2如果你想更仔细地看
终于修复了。在你的需求配置文件(正如它在文档中所说,我在上面的回复中提到)只把shim引用到其他shim模块。
我从路径中调用我的脚本,但是因为它有依赖,我把它们放在shim中,这就是它崩溃的地方。
TL:博士;使用path条目调用主脚本,然后在主脚本中列出定义包装器的deps部分中的深度…
相关文章:
- 用嵌套函数和默认函数定义函数
- Dojo不解析自定义小部件的模板html中的小部件声明性
- 为什么“;未定义的“;在JavaScript中结束循环
- 要求未定义JS回调参数
- 控制台返回var不是't定义,但它是
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 如何检查管道中未定义的项目
- TypeError:无法读取属性'推'未定义的JavaScript
- jQuery自定义验证比较多个输入的序列
- 查看JS对象的所有键,甚至是getter定义的键
- fetch() 函数未在 Ubuntu Chromium 浏览器上定义
- $window.ga在AngularJS事件中未定义
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 未捕获的TypeError无法读取未定义的属性socialsharing
- WebDriverException:tinyMCE未在selenium Web driver java中定义
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- 定义完全独立的样式信息
- 如何在选项卡上定义属性'的主窗口对象
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的