我想使用form2js将表单的信息转换为json到post。问题是,我使用的框架使用require.js,似乎我没有正确地将form2js文件与requirejs配置相关联。我正在接受
未捕获的ReferenceError:未定义form2js
错误。
form2js是form2js.js文件中的一个函数。
这是配置文件:
require.config({
baseUrl: "assets/js/lib/"
, shim: {
'backbone': {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
},
'underscore': {
exports: '_'
},
'bootstrap': {
deps: ['jquery'],
exports: '$.fn.popover'
},
'form2js': {
exports: 'form2js'
}
}
, paths: {
app : ".."
, collections : "../collections"
, data : "../data"
, models : "../models"
, helper : "../helper"
, templates : "../templates"
, views : "../views"
}
});
require([ 'app/app'], function(app){
app.initialize();
});
在主html页面中,我运行了这个:
<script data-main="assets/js/main.js" src="assets/js/lib/require.js" ></script>
非常感谢对正确资源的任何指导!
答案 0 :(得分:0)
在require.config中包含form2js只是告诉它在哪里找到form2js模块(以及其他信息,比如它的依赖项等)。
要实际加载form2.js(并因此定义form2js全局),您必须将其列为您正在使用它的模块中的依赖项。
例如假设你的initialize()函数使用它,你的最后一个语句将是
require([ 'app/app', 'form2js' ], function(app){
app.initialize();
});
注意 - 如果app / app.js使用form2js,则必须将其包含在该模块的define中。您可能还想检查(在浏览器开发人员工具网络选项卡中是否实际加载了form2.js,一旦将其列为某个依赖项)