我想在我的 Node.js项目中使用es2020。
所以我将它添加到我的tsconfig.json文件中:
{
"compileOnSave": false,
"compilerOptions": {
"target": "es2015",
"lib": [
"es2015", "es2017", "es2018", "es2020"
],
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"module": "commonjs",
"moduleResolution": "node",
"rootDir": "src",
"outDir": "dist"
},
"exclude": [
"node_modules"
]
}
但是当我尝试编译时,我遇到了这个错误:
tsconfig.json(6,37):错误 TS6046:“--lib”选项的参数必须是:“es5”、“es6”、“es2015”、“es7”、“es2016”、“es2017”、“es2018” ,'esnext','dom','dom.iterable','webworker','scripthost','es2015.core','es2015.collection','es2015.generator','es2015.iterable','es2015。承诺','es2015.proxy','es2015.reflect','es2015.symbol','es2015.symbol.wellknown','es2016.array.include','es2017.object','es2017.sharedmemory',' es2017.string'、'es2017.intl'、'es2017.typedarrays'、'es2018.promise'、'es2018.regexp'、'esnext.array'、'esnext.asynciterable'。
为什么es2020没有列在那里??
我也尝试了与这个人相同的配置(他将 Promise.allSettled() 与 Node.js 一起使用),但它对我不起作用:Unable to get the value from Promise.allSettled in NodeJs 12 with Typescript 3.8.3 version
{
"compilerOptions": {
"target": "es2017",
"lib": ["es6","esnext", "dom"],
"allowJs": true,
"module": "commonjs",
"moduleResolution": "node",
"declaration": true,
"outDir": "./lib",
"strict": true,
"esModuleInterop": true,
"typeRoots": [ "./types", "./node_modules/@types"]
},
"include": ["src"],
"exclude": ["**/__tests__/*"]
}
我使用的 TypeScript 版本是 4.2.4 ( tsc -v
)
并且 Node.js 版本是 12.19.0 ( node -v
)
我错过了什么?