我有一个我想测试的AMD模块,但我想模拟它的依赖项而不是加载实际的依赖项.我正在使用requirejs,我的模块的代码看起来像这样:
define(['hurp', 'durp'], function(Hurp, Durp) {
return {
foo: function () {
console.log(Hurp.beans)
},
bar: function () {
console.log(Durp.beans)
}
}
}
Run Code Online (Sandbox Code Playgroud)
我怎么能模拟出来hurp,durp所以我可以有效地进行单元测试?
我正在开发一个新的Web应用程序.
这是我第一次使用带有AMD模块的requirejs.
要习惯那种新的范例并不容易 - 据我所知 - 全局命名空间中没有变量.
在以前的Web应用程序中,我总是在全局命名空间中有一个变量,我可以用它来跨不同模块共享多个资源.
现在使用requirejs AMD模块,我使用backbone.js和jquery(两个amd版本 - jquery 1.7.1和backbone.js 0.5.3-optamd3).
在我的应用程序的某处,我从服务器(用户对象)获取backbone.js模块.我想从不同的AMD模块访问该模块.我还想拥有一个应用程序范围的事件对象.
你能告诉我:在requirejs AMD中,在不同模块之间共享资源的正确方法是什么?
我是Web应用程序开发的新手.我有一个名为LoginModel的骨干模型.我想创建它的一个对象,并使其可以从动态加载的任何Backbone View进行全局访问.这是我的模特..
define(['underscore', 'backbone'], function(_, Backbone) {
LoginModel = Backbone.Model.extend({
initialize: function(){ },
defaults:{
userName: 'undefined',
userID: 'undefined'
},
urlRoot: 'https://xxxx.xx.xxxxxx',
parse: function(response, options){
return{
userName: response.userName,
userId:response.userId
};
}
});
});
Run Code Online (Sandbox Code Playgroud)