Versão TypeScript: 2.0.3
Código
Projeto completo aqui .
tsconfig.json :
{
"compilerOptions": {
"target": "es6",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"../node_modules"
]
}
Comportamento esperado:
Para que o projeto seja compilado, e como especifica o tsconfig, o diretório node_modules
deve ser ignorado, portanto, sem erros desse diretório.
Comportamento real:
Muitos erros do diretório node_modules/@types
, por exemplo:
[0] node_modules/@types/core-js/index.d.ts (21,14): erro TS2300: Identificador duplicado 'PropertyKey'.
[0] node_modules/@types/core-js/index.d.ts (85,5): erro TS2687: Todas as declarações de 'nome' devem ter modificadores idênticos.
[0] node_modules/@types/core-js/index.d.ts (145,5): erro TS2403: Declarações de variáveis subsequentes devem ter o mesmo tipo. A variável '[Symbol.unscopables]' deve ser do tipo '{copyWithin: boolean; entradas: boolean; preencher: booleano; find: boolean; findIndex: boolean; keys: ... ', mas aqui tem o tipo' any '.
[0] node_modules/@types/core-js/index.d.ts (262,5): erro TS2687: Todas as declarações de 'sinalizadores' devem ter modificadores idênticos.
[0] node_modules/@types/core-js/index.d.ts (276,5): erro TS2687: Todas as declarações de 'EPSILON' devem ter modificadores idênticos.
[0] node_modules/@types/core-js/index.d.ts (311,5): erro TS2687: Todas as declarações de 'MAX_SAFE_INTEGER' devem ter modificadores idênticos.
@types são incluídos automaticamente na compilação. para excluí-los, adicione "types": []
ao seu tsconfig.json
@mhegazy Mesmo com isso como meu tsconfig:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"types": [],
"exclude": [
"../node_modules"
]
}
Ainda recebo erros, por exemplo
[1] node_modules/@types/core-js/index.d.ts (21,14): erro TS2300: Identificador duplicado 'PropertyKey'.
[1] node_modules/@types/core-js/index.d.ts (85,5): erro TS2687: Todas as declarações de 'nome' devem ter modificadores idênticos.
[1] node_modules/@types/core-js/index.d.ts (145,5): erro TS2403: Declarações de variáveis subsequentes devem ter o mesmo tipo. A variável '[Symbol.unscopables]' deve ser do tipo '{copyWithin: boolean; entradas: boolean; preencher: booleano; find: boolean; findIndex: boolean; keys: ... ', mas aqui tem o tipo' any '.[1] node_modules/@types/core-js/index.d.ts (262,5): erro TS2687: Todas as declarações de 'sinalizadores' devem ter modificadores idênticos.
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"types": []
},
"exclude": [
"../node_modules"
]
}
Acredito que os tipos devem estar dentro de compilerOptions
Comentários muito úteis
Acredito que os tipos devem estar dentro de
compilerOptions