首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我尝试使用log4javascript包括它时,它是未定义的。

当我尝试使用log4javascript包括它时,它是未定义的。
EN

Stack Overflow用户
提问于 2015-01-28 09:49:23
回答 1查看 1K关注 0票数 0

当我使用requirejs (v2.1.13)包含log4javascript (v1.4.10) js变量时,log4javascript是未定义的,但是,正如我在console中看到的那样,log4javascript.js已成功加载。

以下是我的requirejs配置:

代码语言:javascript
复制
requirejs.config({
'baseUrl': 'resources/js',
'paths': {
    'angular': 'libs/angularjs/angular',
    'jquery' : 'libs/jquery/jquery-2.1.1.min',
    'bootstrap' : 'libs/bootstrap/bootstrap',
    'log4javascript': 'libs/log4javascript/log4javascript_uncompressed'
},
'shim' : {
    'angular' : {'exports' : 'angular', deps: ['jquery']},
    'jquery': {'exports' : 'jquery'},
    'bootstrap': {'exports' : 'bootstrap', deps: ['jquery']}
}});

正弦1.4.10 log4javascript应该支持AMD,所以我不需要增加垫片。

我不明白我做错了什么。请帮帮我!

UPD:版本1.4.10中的AMD支持似乎有问题,因为当我在"log4javascript_uncompressed.js“中注释掉以下行并添加shim时,一切都变得很好:

代码语言:javascript
复制
/*
if (typeof define == "function" && define.amd) {
    // AMD. Register as an anonymous module.
    define(factory);
} else if (typeof module != "undefined" && typeof exports == "object") {
    // Node/CommonJS style
    module.exports = factory();
} else {
    // No AMD or CommonJS support so we place log4javascript in (probably) the global variable
*/
    root.log4javascript = factory();
//}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-28 11:24:21

当我使用requirejs (v2.1.13)包含log4javascript (v1.4.10)时,js变量log4javascript是未定义的,但是,正如我在chrome网络控制台中看到的那样,log4javascript.js已成功加载。

这正是如果一切都运转良好的话会发生的事情。看看你注释掉的代码。当log4javascript log4javascript检测到AMD加载器时,它不会将名为的变量泄漏到全局空间中。只有当它没有检测到AMD加载程序或它在Node中运行时,它才会泄漏该变量。

如果使用log4javascript的代码都在log4javascript模块中,那么访问log4javascript的正确方法就是将其作为依赖项包含在definerequire调用中。例如,require(['foo', 'log4javascript'], function (foo, log4javascript) {...});

如果您必须使用希望全局空间中存在log4javascript变量的代码,则可以通过故意泄漏变量来绕过它。有关如何执行此操作的详细信息,请参见this answer

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28189074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档