gpt4 book ai didi

javascript - require.js 没有加载我的模块

转载 作者:行者123 更新时间:2023-12-03 09:20:03 27 4
gpt4 key购买 nike

我正在使用 require.js 和一个库。不幸的是,看起来当加载库时结果返回为空。抱歉,在使用 require.js 方面我可能是个菜鸟

postmonger.js

    (function(root, factory){
if(typeof define === 'function' && define.amd) {
define('postmonger', [], function(){ return factory(root); });
}else {
root.Postmonger = factory(root);
}
}(this, function(root){
root = root || window;
var Postmonger;
if (typeof(exports) !== 'undefined') {
Postmonger = exports;
} else {
Postmonger = {};
}
Postmonger.noConflict = function(){
root.Postmonger = previous;
return this;
}
console.log(Postmonger);
return Postmonger;
}));

加载 postmonger 库“customActivity”的代码

define([
'js/postmonger'
], function(Postmonger){
'use strict';
// console.log(postmonger);
console.log(Postmonger);
});

我的运行时脚本

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/require.js"></script>
<script type="text/javascript">
(function() {
var config = {
baseUrl: ''
};

var dependencies = [
'customActivity'
];

require(config, dependencies);
})();
</script>

当我加载页面时。第一个 console.log 返回一个对象,第二个返回 Null。我一定是错过了什么。

最佳答案

尝试使用 postmonger 而不是 js/postmonger

define([
'postmonger'
], function(Postmonger){
'use strict';
// console.log(postmonger);
console.log(Postmonger);
});
<小时/>

编辑 - 为什么 javscript 加载但 AMD 模块为空/未定义。

当 require 看到路径 js/postmonger 时,它会尝试下载 js/postmonger.js 中的文件,找到并成功加载。但在这个文件中,我们有一个名为 postmonger 的命名模块,其代码如下

define('postmonger', [], function(){ return factory(root); });

因此名为 js/postmonger 的模块从未被定义,因此你得到了未定义。 (根据我的理解,您应该未定义,但您已将其提到为空)

关于javascript - require.js 没有加载我的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31865925/

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