在带有require.js的Backbone.js视图中包含自定义代码库
我想在主干视图中包括一个有用函数库。我正在使用require.js。我的库看起来像:在带有require.js的Backbone.js视图中包含自定义代码库,backbone.js,requirejs,Backbone.js,Requirejs,我想在主干视图中包括一个有用函数库。我正在使用require.js。我的库看起来像: define(function (require) { "use strict"; console.log('in the useful'); var $ = require('jquery'); function myFunction() { alert("Hello World!"); } }); 视图是这样的: d
define(function (require) {
"use strict";
console.log('in the useful');
var $ = require('jquery');
function myFunction()
{
alert("Hello World!");
}
});
视图是这样的:
define(function (require) {
"use strict";
var $ = require('jquery'),
_ = require('underscore'),
UsefulFuncs = require('app/utils/useful_func'),
tpl = require('text!tpl/Register.html'),
template = _.template(tpl),
errors = [],
Backbone = require('backbone');
return Backbone.View.extend({
initialize: function() {
this.render();
},
render: function () {
this.$el.html(template());
return this;
},
events: {
'submit .register-form' : 'onSubmit',
},
onSubmit: function(e) {
//UsefulFuncs.myFunction();
myFunction();
},
});
});
但当我点击“提交”时,我得到了“myFunction未定义”。尝试UsefulFuncs.myFunction()时也是如此
那么,如何在主干视图中访问函数库呢?您必须从实用程序模块返回一个包含函数的对象作为属性:
define(["jquery"], function($) {
"use strict";
var UsefulFuncs = {};
console.log('in the useful');
UsefulFuncs.myFunction = function() {
alert("Hello World!");
}
return UsefulFuncs;
});
然后可以添加更多函数作为UsefulFuncs
的对象属性