我在 RequireJS 中包含模块时遇到问题。
有两个文件..test.js 和 card.js
在 test.js 中,当页面加载时,它会显示“未定义不是函数”:
require(
['app',
'jquery',
'card'],
function(App, $, Card) {
var card = new Card("test");
}
);
这是card.js:
define("Card", function () {
function Card(name) {
this.name = name;
};
return Card;
});
我在card.js中放入了一些console.log(),当它像test.js中那样被引用时,它会很好地调用它们。另外,如果我要在 card.js 中定义常规 js 对象类(例如):
function Card(name) {
this.name = name;
}
我能够在 test.js 中正确创建该 Card 对象。
有什么线索说明我是如何将其全部错误地连接起来的吗?
最佳答案
问题,如Bergi说的就是你们的模块名称不一样。
对于 RequireJS,Card
和 card
是不同的模块。
您所要做的就是将 card.js
更改为
define("card", function () {
function Card(name) {
this.name = name;
};
return Card;
});
关于javascript - 未定义不是函数 - RequireJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23847058/