javascript - 在 backbone.js 中使用全局变量

标签 javascript backbone.js global-variables

所以,第一个问题我找不到答案。可能有足够的理由问我自己的第一个问题。如果可以在 backbone.js 的范围之外找到答案,我们深表歉意。

在 backbone.js 应用程序中,我需要访问不同函数中的多个变量,因此我必须使用一些全局变量设置。

我想知道我当前的解决方案是否可以接受/良好实践。我的 IDE (IDEA) 似乎认为它不是:

var MyModel = Backbone.Model.extend({

initialize:function(){
  var myGlobalVar, myOtherGlobalVar;//marked as unused local variable
},

myFunction:function() {          
      myGlobalVar = value;//marked as implicitly declared
      model.set({"mrJson": {"email": myGlobalVar}});
      model.save();
    });
  }
},

myOtherFunction:function() {          
      myOtherGlobalVar = otherValue;//marked as implicitly declared
      model.set({"mrJson": {"email": myGlobalVar, "other": myOtherGlobalVar}});
      model.save();
    });
  }
}
}

我尝试声明隐式声明的全局变量,但这导致它们无法从其他函数访问。

在 backbone.js 中是否有适当的方法来处理这些全局变量?

最佳答案

您当前声明变量的方式是在函数 initialize 范围内,而不是对象 MyModel 范围内。要将变量定义为模型变量(所有对象函数均可访问),请执行以下操作:

var MyModel = Backbone.Model.extend({

myGlobalVar: null,
myOtherGlobalVar: null,

initialize:function(){
  console.log(this.myGlobalVar)
},
...

关于javascript - 在 backbone.js 中使用全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9411896/

相关文章:

javascript - 我可以使用内容脚本 js 文件以编程方式注入(inject) CSS 文件吗?

backbone.js 使用不同的 url 来保存和获取模型

map - 创建全局 map 变量

javascript - 更改数据后,我的主干 View 中的 HTML 没有更改

jquery - Backbone - 从 API 获取 JSON 数据

c++ - 尝试从编译文件中查找全局变量。程序无法区分常量和全局变量。

Python:类对象已实例化但未定义?

javascript - new到底在做什么?

javascript - @font-face 在 Chrome 上阻止页面下载

javascript - 当 parent 的状态必须由 child 更新时,this.setState 不起作用