2016-06-29 19 views
2

我在WebStorm IDE中添加了文件systemjs.d.ts(肯定輸入了System.js),並且在這個文件中出現了兩個錯誤(它們是相同的)。systemjs.d.ts有關於類型別名的編譯錯誤

這些都是錯誤行:

type ModuleFormat = "esm" | "cjs" | "amd" | "global" | "register"; 

type Transpiler = "traceur" | "babel" | "typescript"; 

我讀過有關的「類型」的關鍵字,這意味着別名,但無法找到他們使用像這裏的字符串,但只有類型的任何實例。所以我猜這是文件中的一個錯誤。

的錯誤,我得到:

TS1110:類型預期

整個systemjs.d.ts文件: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/systemjs/systemjs.d.ts

這是文件中的錯誤?我怎麼修復它?

任何幫助將深深感激!

回答

3

這是string literal types的聯合,這意味着ModuleFormat類型的變量只能有一個指定的值。

此功能在typescript 1.8中是新增的,是否因爲您正在使用舊版打字稿進行編譯而出現錯誤?

看到這個example

type Answer = "yes" | "no" | "maybe"; 

function question(response: Answer) { } 

question("yes"); // OK 
question("sure"); // Error