您好,我在使用WebStorm 2016.2.2时在tsconfig
支持“lib”属性时遇到问题。
我已经尝试在IDE首选项(Preferences -> Languages & Frameworks -> TypeScript
)中编辑TypeScript版本并指向全局安装的TypeScript 2.0版本,但我仍然会在Object.assign
之类的内容上出现错误突出显示和Promise<any>
。
我多次重启IDE,似乎没有任何改变,关于如何修复或调试这个的想法?
//tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"noEmitHelpers": true,
"strictNullChecks": false,
"baseUrl": "./src",
"paths": {
"core": ["app/core"],
"reactive": ["app/reactive"],
"models": ["app/models"],
"services": ["app/services"]
},
"lib": [
"dom",
"es6"
],
"types": [
"hammerjs",
"jasmine",
"node",
"protractor",
"selenium-webdriver",
"source-map",
"uglify-js",
"webpack"
]
},
"exclude": [
"node_modules",
"dist"
],
"awesomeTypescriptLoaderOptions": {
"forkChecker": true,
"useWebpackText": true
},
"compileOnSave": false,
"buildOnSave": false,
"atom": { "rewriteTsconfig": false }
}
答案 0 :(得分:5)
您指定:
"target": "es5"
因此,编译器将使用常规lib.d.ts而不是lib.es6.d.ts等ES6
功能编译它,例如Object.assign
和Promise
,而其他功能则丢失
将其更改为
"target": "es6"
它应该没问题。