расширение .js в скомпилированном файле ts

Всем привет. Возник следующий вопрос, буду очень благодарен за ответ.

Использую автоматическую компиляцию tsc -w, но если в файлах есть import другого файла, например import { Modal } from "./modal", то в скомпилируемом файле пропадает расширение .js и браузер не может загрузить файл. Какая настройка в ts.config за это отвечает (чтобы расширение автоматически выставлялось)? Или какая вообще оптимальная настройка компилятора для TS в современном мире.

{
  "compilerOptions": {
    // File Layout
    "rootDir": "./src",
    "outDir": "./dist",
    "module": "es2022",
    "target": "esnext",
    "types": [],
    // For nodejs:
    // "lib": ["esnext"],
    // "types": ["node"],
    // and npm install -D @types/node
    "sourceMap": true,
    "declaration": true,
    "declarationMap": true,
    "noUncheckedIndexedAccess": true,
    "exactOptionalPropertyTypes": true,

    // Style Options
    // "noImplicitReturns": true,
    // "noImplicitOverride": true,
    // "noUnusedLocals": true,
    // "noUnusedParameters": true,
    // "noFallthroughCasesInSwitch": true,
    // "noPropertyAccessFromIndexSignature": true,
    "strict": true,
    "jsx": "react-jsx",
    "verbatimModuleSyntax": true,
    "isolatedModules": true,
    "noUncheckedSideEffectImports": true,
    "moduleDetection": "force",
    "skipLibCheck": true,
  }
}

Пример:

import { Modal } from "./modal"; // пропадает расширение, а хотелось чтобы оно автоматически выставлялось
class App {
    modal;
    constructor(modal = new Modal()) {
        this.modal = modal;
        modal.close();
    }
}
new App();
//# sourceMappingURL=app.js.map

Ответы (0 шт):