Búsqueda de sitios web

typescript - ¿Por qué tslint:recommended no permite módulos?


Estamos usando TypeScript v2.3.2 y TSLint v4.5.1 con VS Code para crear una SPA. La base de código está creciendo y necesitamos modularizarla de alguna manera.

Intenté hacer la modularización usando módulos de TypeScript, pero encontré el siguiente error de lint al transpilar la aplicación.

[tslint] 'namespace' and 'module' are disallowed (no-namespace)

Estoy usando esta configuración para el linter:

{
  "extends": "tslint:recommended",
  "rules": {
    "no-var-requires": false,
    "no-console": ["error", false],
    "max-line-length": [false]
  }
}

El archivo de reglas recomendado en la línea 89 muestra esta regla:

"no-namespace": true,

Me pregunto si hay algo mal y cuál sería la mejor manera de modularizar una SPA, siguiendo buenas prácticas que no se vuelvan obsoletas pronto.

Se darán la bienvenida a ejemplos de código. Muchas gracias.

Respuesta #1

[tslint] 'namespace' y 'module' no están permitidos (no-namespace)

Porque no son sintaxis estándar de JavaScript.

Más

  • Namespace es una sintaxis especial solo de TypeScript para un patrón común de JS: https://basarat.gitbook.io/typescript/docs/project/namespaces.html
  • No uses espacios de nombres con outFile : https://basarat.gitbook.io/typescript/docs/tips/outFile.html

Artículos relacionados