Minispade过滤器将每个文件的代码封装在闭包中。现在,对于应该全局公开的文件中定义的对象,它们不再是全局的,因为它们被封装在闭包中。了解minispade过滤器
那么,我们如何确实需要在我们的主应用程序文件中的单独文件中定义对象?
这是我的例子。
在我的文件,test.js
var test = { sayHello: function(){alert('hello');} }
我主要的应用程序文件,我做的:
require('todos/vendor/jquery-1.7.1');
require('todos/vendor/ember-0.9.5');
require('todos/vendor/test');
console.log(jQuery); // this logs the jQuery object
console.log(Ember); // this logs the Ember object
console.log(test); // this is undefined
如何访问我的主要的应用程序的js文件中的test
对象?是否我必须以不同的方式在我的文件中定义我的test
对象?
UPDATE:
我可以通过删除var
泄漏对象全局命名空间,但是,建议的方法?
我怀疑。感谢您的澄清。 – Rajat
+1为rake-pipeline-assetfile指南。一直在寻找那样的东西。 – roguenet