微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

所以,第一个问题我找不到答案.可能有足够的理由问我自己的第一个问题.如果答案可以在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中的这些全局变量

解决方法

您当前声明变量的方式,它们在函数初始化范围内,而不是对象MyModel范围.要将变量定义为模型变量(可由所有对象函数访问),请执行以下操作:
var MyModel = Backbone.Model.extend({

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

原文地址:https://www.jb51.cc/js/156569.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐