我有一个打字稿@2项目。我想使用一些ecma2017功能。我发现可以在lib
的{{1}}中应用compilerOptions
:
tsconfig.json
然而为什么这有效?这些lib来自何处,可以包含哪些库?
最接近我能找到的文档是this what's new entry:
下层异步功能
在TypeScript 2.1之前支持此功能,但仅限于定位ES6 / ES2015。 TypeScript 2.1为ES3和ES3带来了功能 ES5运行时间,意味着您可以自由地利用它 无论你正在使用什么环境。
注意:首先,我们需要确保我们的运行时具有全局可用的符合ECMAScript的Promise。这可能涉及到 抓住Promise的polyfill,或者依靠你可能拥有的 在您定位的运行时间内。我们还需要确保这一点 通过将lib标志设置为某种类型,TypeScript知道Promise存在 比如“dom”,“es2015”或“dom”,“es2015.promise”,“es5”
但我没有发现它特别有帮助。
答案 0 :(得分:2)
compiler option documentation:
中引用了编译器选项lib
的所有值
List of library files to be included in the
Possible values are:
► ES5
► ES6
► ES2015
► ES7
► ES2016
► ES2017
► ESNext
► DOM
► DOM.Iterable
► WebWorker
► ScriptHost
► ES2015.Core
► ES2015.Collection
► ES2015.Generator
► ES2015.Iterable
► ES2015.Promise
► ES2015.Proxy
► ES2015.Reflect
► ES2015.Symbol
► ES2015.Symbol.WellKnown
► ES2016.Array.Include
► ES2017.object
► ES2017.SharedMemory
► esnext.asynciterable
Note: If --lib is not specified a default library is injected. The default library injected is:
► For --target ES5: DOM,ES5,ScriptHost
► For --target ES6: DOM,ES6,DOM.Iterable,ScriptHost