TypeScript编译器具有用于--lib cmd行arg的以下选项:
他们之间有什么区别?如果我只需要ES2018或ES2018.Promise支持,而不关心其他ES2018特性,那么我应该使用Promisefinally()或Promisefinally()吗?
另外,既然那些ES2018库支持什么TS版本?当我尝试将它们与TS 2.6.2一起使用时,它会抛出:
tsconfig.json(16,13):error TS6046:“-lib”选项的参数必须是:“es5”、“es6”、“es2015”、“es7”、“es2016”、“es2017”、“esnext”、“dom”、“dom.iterable”、“webworker”、“scripthost”、“es2015.core”、“es2015.Collection”、“es2015.生成器”、“es2015.iterable”、“es2015.诺言”、“es2015.agent”,‘es2015.Rese’、‘es2015.符号’、‘es2015.符号.众所周知’、'es2016.array.include‘、'es2017.object’、'es2017.sharedmemory‘、'es2017.string’、'es2017.intl‘、’esnext.异步‘。
发布于 2018-04-02 22:33:59
lib选项只为这些库提供类型。如果您指定了ES2018,那么即使您为ES2015指定目标,也会得到ES2018类型。默认情况下,TypeScript根据指定的目标设置一些库,但它允许您从2.0版开始手动添加更多类型。
他们之间有什么区别?
它们是不同特征族的子集。
我应该使用ES2018还是ES2018 ?如果我只需要Promisefinally()支持,而不关心其他ES2018特性,那么可以使用features吗?
是的,你可以观察到你需要的东西。但是,如果包含更多内容,则不会增加生成的JavaScript。
既然那些ES2018库支持什么TS版本?
如果您使用的目标不支持本机特性,您可以下载(npm)软件包到Polyfill。它与TS版本没有直接关系。
https://stackoverflow.com/questions/49616100
复制相似问题