gpt4 book ai didi

RequireJS 奇怪的未定义模块

转载 作者:行者123 更新时间:2023-12-02 14:30:53 24 4
gpt4 key购买 nike

我的模块设置中存在 undefined variable 的问题,最好通过示例进行解释,我有:

common.js(requirejs 的配置)

require([
'module/polyfills/someModule'
], function(
module
) {

module.init();

});

模块/polyfills/someModule.js

define([
'underscore',
'config',
'text!tpl/utils/textTemplate.html'
], function(_, config, template) {

// ref 1
return {
init: function() {
// ref 2
// do stuff
},

events: function() {
// add some events
},

};
});

如果我在注释 ref 1 处放置断点,我可以看到 config 变量及其属性。但是,如果我在 ref 2 处放置断点,则 config 未定义。然而下划线和模板并不是未定义的。

我已经在我的需求配置中删除了有关配置的任何特殊内容。配置如下所示:

config.js

define([], function (clickType) {
return {
clickType: 'test'
};
});

控制台中没有错误,我非常确定这不是循环依赖!

最佳答案

ref2 处的注释处是一个您尚未访问配置的闭包。该函数是在解析时创建的,它是一个闭包,您在其中访问的任何内容都可用。简单测试,在//ref2 添加以下行代码

var myConfig = config;

现在您将看到定义的配置。

关于RequireJS 奇怪的未定义模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29493497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com