在标准isClient
条件中,我存储了一个变量。我们说我需要从window
访问它,它位于何处?
if (Meteor.isClient) {
var people = new Meteor.Collection("people");
}
谢谢!
答案 0 :(得分:5)
在Meteor客户端环境中,您在没有var
关键字的情况下声明的每个变量都可以在window
的全局对象上访问。
if (Meteor.isClient) {
people = new Meteor.Collection("people");
console.log(window.people._name); // displays "people" in the console
}
使用var
关键字声明的变量是文件作用域,声明没有var
关键字的变量是应用程序作用域。
在客户端上,全局范围是window
对象,在服务器上,全局范围是global
对象。
在两个环境中声明全局变量时,在window
对象和global
对象上都声明了具有此名称的属性,如果修改客户端,则这两个属性是不同的,它不会影响服务器。