使用 Dojo 时是否需要控制台 shim?
Is a console shim required when using Dojo?
我经常在 JavaScript AMD 模块中看到如下垫片,以确保 console 可用:
(function () {
var f = function () { };
if (!window.console) {
window.console = {
log: f, info: f, warn: f, debug: f, error: f
};
}
}());
使用 Dojo 时需要这样做吗?
查看 http://dojotoolkit.org/reference-guide/1.8/quickstart/debugging.html 似乎 Dojo 默认情况下也在做类似的事情?
只要 dojo/_base/kernel
已加载,Dojo 就会为您执行此操作。 (它是许多通用模块的依赖项,例如 lang
、dom-construct
和 on
。)
https://github.com/dojo/dojo/blob/1.10.4/_base/kernel.js#L153-L176
我经常在 JavaScript AMD 模块中看到如下垫片,以确保 console 可用:
(function () {
var f = function () { };
if (!window.console) {
window.console = {
log: f, info: f, warn: f, debug: f, error: f
};
}
}());
使用 Dojo 时需要这样做吗?
查看 http://dojotoolkit.org/reference-guide/1.8/quickstart/debugging.html 似乎 Dojo 默认情况下也在做类似的事情?
只要 dojo/_base/kernel
已加载,Dojo 就会为您执行此操作。 (它是许多通用模块的依赖项,例如 lang
、dom-construct
和 on
。)
https://github.com/dojo/dojo/blob/1.10.4/_base/kernel.js#L153-L176