我有一个 jQuery 项目,我希望在模型变量中维护表单数据。我当前的UI代码是这样的
$(document).ready(function(){
$("#errMsg").hide();
var Test = Backbone.Model.extend({
defauts: {
id: null,
test: null,
test1: null,
test2: null,
comments: null
}
});
var uniquename = new Test({ id: null});
});
function test(){
//Trying to access uniquename here or Test model
}
当我尝试从外部方法访问 Test 或 uniquename 时,它们无法访问。我做的所有其他事情都是在普通的 Javascript 方法中进行的。我知道这不是正确的方法,所以我正在寻求帮助。如何构建我的方法以及如何使我的变量可以跨不同方法访问,以便我可以读取一种方法的 Web 服务响应并将其用作另一种方法的请求?
最佳答案
只需在同一范围内定义函数即可:
$(document).ready(function(){
$("#errMsg").hide();
var Test = Backbone.Model.extend({
defauts: {
id: null,
test: null,
test1: null,
test2: null,
comments: null
}
});
var uniquename = new Test({ id: null});
function test(){
//access uniquename here or Test model
}
});
如果你不能这样做,例如,如果你的代码被分成不同的文件或其他文件,那么最简单的解决方案是使用 namespace - 例如 MyApp.Models.Test = Backbone.Model.extend( {})
。在这种情况下,MyApp
将是全局可用的(在首先加载的文件中的 $(document).ready()
外部声明)
或者使用模块模式,RequireJS 是 Backbone.js 应用程序中非常常见的模块加载器。
关于javascript - 如何将 Backbone 模型与 jQuery 相关的范围一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42934768/