我在RequireJS中包含一个模块时遇到问题。
有两个文件.. test.js和card.js
在test.js中,当页面加载时,“undefined不是函数”:
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对象。
有什么线索我怎么挂错了?
答案 0 :(得分:1)
正如Bergi所说,问题在于你的模块名称不一样。
对于RequireJS,Card
和card
是不同的模块。
您所要做的就是将card.js
更改为
define("card", function () {
function Card(name) {
this.name = name;
};
return Card;
});