2
我想獲取Ember.js庫的定義來使用TypeScript。每當我嘗試引用餘燼,1.0.d.ts文件出現錯誤的情況下,43:TypeScript DefinitelyTyped Ember.js d.ts不會編譯
The name 'Ember' does not exist in the current scope.
我使用Visual Studio 2012與打字稿和安裝Web精華包,心想也許這是一個問題用我自己的配置,我嘗試從DefinitelyType項目加載一個不同的.d.ts文件。我試圖引用Angular.js定義文件,它給了我沒有錯誤,所以我假設定義文件有問題。
https://github.com/borisyankov/DefinitelyTyped/blob/master/Definitions/ember-1.0.d.ts
可能是什麼這個錯誤的原因是什麼? 。
這是給我的錯誤的部分之一,在灰燼*部分被標記爲錯誤:
export interface Enumerable extends Mixin {
// Fields
firstObject: Object;
hasEnumerableObservers: bool;
lastObject: Object;
nextObject: Object;
// Methods
addEnumerableObserver(target, opts);
compact(): any[];
contains(obj: Object): bool;
enumerableContentDidChange(removing: number, adding: number): Object;
enumerableContentDidChange(removing: Ember.Enumerable, adding: Ember.Enumerable): Object;
enumerableContentDidChange(start: Number, removing: number, adding: number): Object;
enumerableContentDidChange(start: Number, removing: Ember.Enumerable, adding: Ember.Enumerable): Object;
enumerableContentWillChange(removing: number, adding: number): Ember.Enumerable;
enumerableContentWillChange(removing: Ember.Enumerable, adding: Ember.Enumerable): Ember.Enumerable;
enumerableContentWillChange(start: Number, removing: number, adding: number): Ember.Enumerable;
enumerableContentWillChange(start: Number, removing: Ember.Enumerable, adding: Ember.Enumerable): Ember.Enumerable;
every(callback: Function, target?: Object): bool;
everyProperty(key: string, value?: string): any[];
filter(callback: Function, target?: Object): any[];
filterProperty(key: string, value?: string): any[];
find(callback: Function, target?: Object): Object;
findProperty(key: string, value?: string): Object;
/*forEach
getEach
invoke
map
mapProperty
reduce
removeEnumerableObserver
setEach
some
someProperty
toArray
uniq
without*/
}
謝謝。看起來,除去引號後,所有錯誤都消失了。即使不必將Ember.Mixin添加到Enumerable擴展的接口中。是否有任何理由補充呢? – bbs
Ember模塊中有幾個對象可能存在名稱衝突,例如'Ember.Object'可能被誤認爲是全局對象。 – Fenton
好的,再次感謝你。 – bbs