Meteor 0.6.0 で導入されたファイルレベルの JavaScript 変数スコープは、TypeScript (および CoffeeScript とおそらく他のトランスパイラー) で書かれたプロジェクトとパッケージを壊します。無効にする方法はありますか?
たとえば、次の Typescript コード:
declare var Meteor: any;
module Model {
export var Players = new Meteor.Collection('players');
}
Model がグローバルと見なされなくなったため、機能しなくなった次の JavaScript を生成します。
var Model;
(function (Model) {
Model.Players = new Meteor.Collection('players');
})(Model || (Model = {}));
プリペンディングthis.Model = null;
は回避策ですが、冗長であり、Meteor で使用されるすべてのコードに適用する必要があります (私の Meteorite パッケージの少なくとも 1 つが壊れています)。
Meteor 固有の JavaScript 言語セマンティクスを導入した理由は何ですか?