我试图在我的Marionette应用程序中切换到Zepto,并且我尝试使用这个zepto插件(https://github.com/sudhirj/simply-deferred)来支持jquery。我也在使用require.js,到目前为止还无法使它工作,而且我仍然会得到以下错误:
Uncaught TypeError: Object function (selector, context){
return zepto.init(selector, context)
} has no method 'Deferred' 这就是我需要的js文件的样子:
require.config({
paths: {
'backbone': 'lib/backbone',
'text': 'lib/text',
'underscore': 'lib/underscore',
'bootstrap' : 'lib/bootstrap',
'marionette' : 'lib/backbone.marionette',
'localStorage' : 'lib/backbone.localStorage',
'less' : 'lib/less',
'Email' : 'models/email',
"Emails" : 'collections/emails',
"FormView" : 'views/FormView',
"EmailsView" : 'views/EmailsView',
"EmailView" : 'views/EmailView',
"NoEmailView" : 'views/NoEmailView',
"FormView" : 'views/FormView',
"MyApp" : 'app',
"parseEmail" : "parsing/parseEmail",
"LabelView" : "views/LabelView",
'socketio': '../socket.io/socket.io',
"zepto" : 'lib/zepto',
"deferred" : 'lib/deferred'
},
shim: {
'zepto':{
deps: ["deferred"],
exports: '$'
},
'underscore': {
exports: '_'
},
'backbone': {
deps: ["underscore", "zepto"],
exports: 'Backbone'
},
'bootstrap' : {
deps: ["zepto"]
},
'marionette' : {
deps : ["backbone", "underscore", "zepto"],
exports: 'Marionette'
}
'socketio': {
exports: 'io'
},
},
});
require(
[ "zepto",
"underscore",
"backbone",
"less",
"marionette",
"MyApp",
"socketio",
"deferred",
],
function($ , _, Backbone, less, Marionette, MyApp, io, Deferred) {
Deferred.installInto($);
});我真的被困在这里了,任何帮助都将不胜感激。
发布于 2013-09-27 04:49:45
我认为推迟应该取决于Zepto,而不是反过来:
shim: {
'zepto':{
exports: '$'
},
'deferred': {
deps: ["zepto"],
},发布于 2013-11-12 09:39:06
我认为‘延期’可能还需要一个出口报表,以下是我的工作。
'deferred': {
'deps': ['jquery'],
'exports': 'Deferred'
},https://stackoverflow.com/questions/19037637
复制相似问题