Typescript: как изменить tsconfig для поддержки класса (я не говорю о модуле) - PullRequest
1 голос
/ 08 мая 2020

У меня есть этот tsconfig

{
  "compilerOptions": {
    "target": "es6",
    "lib": ["es6"],
    "outFile": "index.js"
  }
}

При компиляции возникает ошибка при создании класса: Используйте esversion: es6

Где мне добавить эту строку? Неужели это в tsconfig?

1 Ответ

1 голос
/ 08 мая 2020

Вы пишете источники TS с использованием модулей ES6, однако по состоянию на январь 2016 года ни один браузер не поддерживает эту модульную систему. Таким образом, вы можете перенести модули ES6 в другую модульную систему: Common JS, AMD, System JS. Это можно сделать с помощью опции модуля. Существуют транспиляторы времени сборки или выполнения, которые переносят систему модулей ES6 в одну из систем модулей, поддерживаемых системой сборки (Webpack) или загрузчиком модулей (System JS). Если не указано, модуль по умолчанию использует ES6, если целью является ES6, или Common JS в противном случае. Я предпочитаю явно указывать цель Common JS:

Вероятно, вам следует добавить свойство module.

{
    "compilerOptions": {
        "module": "CommonJS" // for exapmle
   }
}

Также вы должны добавить lib:

{
    "compilerOptions": {
    "lib": ["es6", "dom"],
    }
}

Подробнее: https://indepth.dev/configuring-typescript-compiler/

...