Array.from是一個ES6功能。當我在打字稿使用它,並編譯成目標ES5也不會改變它:typecript IE11中的Array.from
tsc -t es5 prog.ts
即當我看到裏面prog.js我仍然看到Array.from在同一個地方。在IE11使用prog.js抱怨如下:
對象不「從」
支持屬性或方法爲什麼不打字稿轉換Array.from在一些ES5替代?
有沒有辦法設置它,所以它呢?
Array.from是一個ES6功能。當我在打字稿使用它,並編譯成目標ES5也不會改變它:typecript IE11中的Array.from
tsc -t es5 prog.ts
即當我看到裏面prog.js我仍然看到Array.from在同一個地方。在IE11使用prog.js抱怨如下:
對象不「從」
支持屬性或方法爲什麼不打字稿轉換Array.from在一些ES5替代?
有沒有辦法設置它,所以它呢?
這是一種方法,可以是polyfilled。
無法多重填充的語言功能被轉發(如果可能的話,在選定的TypeScript目標上)。
Array.from
尚未存在於TypeScript v1.8中,因此編譯器保留原來的這部分代碼。
根據這linkArray.from
是不支持在IE瀏覽器,所以你必須實現一個polyfill(請參閱鏈接,polyfill在)。
感謝Guillaume。這爲我清除了很多。 – chriskelly
我會推薦使用core-js
,因爲你會得到更多的polyfill,並且不必逐段填充API。如果你需要/想要的是Array.from
,那麼通過一切手段將它從MDN網站上撕掉,但是你可以選擇性地只使用core-js
導入你需要的polyfills。
使用npm安裝core-js
...
> npm install --save core-js
...然後在.ts
...
import 'core-js' // to get the whole thing
或
import 'core-js/es-6/array'; // to get just array polyfills for example
謝謝。你的小費幫了我很多。 BTW:實際上,它是'import'core-js/es6/array';' –
它是一種方法,其可polyfilled。不能被填充的語言特徵將被轉譯。 – estus
我明白了。我不知道。我期望transpiling將所有代碼轉換爲一些ES5 equivilant。但是,是的,它可以很容易地被填充。謝謝。發表一個答案,我會接受 – chriskelly