Cartografía
Per TypeScript Handbook menores module resolution:
A veces los módulos no están directamente ubicados bajo baseUrl. Por ejemplo, una importación a un módulo "jquery" se traduciría en tiempo de ejecución a "node_modules\jquery\dist\jquery.slim.min.js". Los cargadores utilizan una configuración de asignación para mapear nombres de módulos a archivos en tiempo de ejecución, ver documentación de RequireJs y documentación de SystemJS.
El TypeScript compilador apoya la declaración de tales mapas usando propiedades "paths" en archivos tsconfig.json. Aquí hay un ejemplo para cómo especificar la propiedad "paths" para jquery.
{
"compilerOptions": {
"baseUrl": ".", // This must be specified if "paths" is.
"paths": {
"jquery": ["node_modules/jquery/dist/jquery"] // This mapping is relative to "baseUrl"
}
}
}Si tiene un proyecto que utiliza esta funcionalidad, puede configurar los generadores internos por:
- Dejar
tsoa-nextread compilador opciones de untsconfig.json- superando valores específicos concompilerOptionsen tutsoaconfig
tsconfig.json es una fuente de insumos, no la autoridad final. La precedencia es:
- TypeScript predeterminados internos
- resuelta
tsconfig.json3. explícitacompilerOptionsdentrotsoaconfig
Si tsconfig está omitido, tsoa-next busca tsconfig.json a partir de la carga tsoa directorio de config. Si tsconfig se proporciona, se resuelve en relación con ese archivo de configuración.
{
"tsconfig": "./tsconfig.json",
"spec": {
...
},
"routes": {
...
},
"compilerOptions": {
"baseUrl": "./path/to/base/url",
"paths": {
"exampleLib": ["./path/to/example/lib"]
}
}
}También puede continuar proporcionando opciones de compilador directamente cuando no desea confiar en tsconfig.json.
{
"spec": {
...
},
"routes": {
...
},
"compilerOptions": {
"baseUrl": "./path/to/base/url",
"paths": {
"exampleLib": "./path/to/example/lib"
}
}
}