Я пытаюсь понять опцию компилятора модуля машинописного текста.
Я просмотрел документацию машинописного текста - документы В нем говорится, что опция модуля - Specify module code generation
.
Что это значит?
Означает ли это, что если я добавлю опцию модуля как commonjs
, то компилятор скомпилирует код в commonjs?Но тогда у нас есть варианты, такие как esnext, es16
.После того, как я просмотрел Документы: Разница между целями модуля esnext, es6, es2015 , я понял, что import() expressions are understood in esnext
.В любом случае целью компилятора является компиляция кода в понятный браузеру синтаксис (commonjs).Таким образом, компиляция кода для данного типа модуля не имеет смысла.
Значит ли это, что тип модуля, который вы указываете, указывает компилятору, в каком синтаксисе написан код?То есть из какого кода он должен скомпилировать его в commonjs?Но тогда у нас есть тип модуля commonjs
, который часто используется, но мы почти никогда не пишем код в чистом синтаксисе commonjs.
какова цель tsconfig.json? ответ stackoverflow говорит module specifies module manager
.Я не понимаю, что это значит.
Я также прошел через Понимание «цели» и «модуля» в опциях модуля tsconfig и tsconfig - относится ли «System» к SystemJS? .
Похоже, что ни один из них не дает правильного ответа на мой вопрос.
tsconfig.json
{
"compilerOptions: {
"module": "esnext"
}
}