TypeScript исключает код импорта модуля из вывода

Похоже, набор текста для общих проектов заключен в модуль. Например, react & react-dom.

Поэтому мне нужно использовать import * as React from 'react' для машинописного текста, чтобы знать, что React существует.

Я использую Typescript для кодовой базы браузера, и я бы скомпилировал все мои ts-файлы в один js-файл.

Есть ли способ просто исключить импорт модуля из выходного файла?

Я использую последнюю версию Typescript.


person mamu    schedule 15.06.2016    source источник
comment
Привет, @mamu, есть новости по этому поводу?   -  person tenbits    schedule 27.06.2017


Ответы (2)


Да! (если вы используете веб-пакет)

Вот как я это делаю вwebpack.config.js:

...
   externals: {
      "react": "React",
      "react-dom": "ReactDOM"
  },
...
person tinnick    schedule 05.05.2020

Есть ли способ просто исключить импорт модуля из выходного файла

Не используйте --outFile. Есть и другие причины моей неприязни: https://basarat.gitbooks.io/typescript/content/docs/tips/outFile.html.

С помощью modules вы можете указать загрузчику модуля (например, webpack) исключить конкретный модуль из создаваемого им пакета, поскольку вы можете использовать его, например, из некоторого CDN.

person basarat    schedule 15.06.2016
comment
То есть я хотел бы исключить 'var React = require (' react ');' строки из выходного файла, без какого-либо модуля распознавания модулей это приведет к ошибке в браузере. Я просто хотел бы объединить все файлы проекта и использовать. - person mamu; 15.06.2016
comment
`Я просто хотел бы объединить все файлы проекта и использовать` Использовать react глобальную версию определения (вместо версии модуля) - person basarat; 15.06.2016