Ember和立即调用的函数

时间:2014-11-19 15:22:16

标签: ember.js

我刚刚加入了一个一直在构建Ember应用程序的团队。它们处于开发的早期阶段,但引起我注意的是它们的所有对象都被包裹在封闭中:

(function () {
  'use strict';

  App.Document = DS.Model.extend({
    uri: DS.attr('string'),
    name: DS.attr('string'),
  });
}());

我知道'使用严格的'你包裹对象。但除此之外,这真的有必要吗?我以前的Ember应用程序是使用CoffeeScript构建的,我相信它会在编译时自动完成。

另外,想知道是否有办法在一个地方执行此操作,例如清单文件,而不必在应用程序的每个文件中执行此操作。

1 个答案:

答案 0 :(得分:2)

这通常是为了将模块彼此隔离,因为JavaScript变量的作用域是在函数级别。

如果您的团队能够,您应该将应用切换到Ember CLI,这会为您处理此类内容(此外还有更多内容)。