Bitsrc: Транспортер Typescript создает ссылки на module.js.map

Я пытался использовать Bitsrc для совместного использования внешних компонентов в нескольких приложениях. Я могу создавать компоненты и экспортировать их в bitsrc, однако при попытке импортировать и использовать их я сталкиваюсь с ошибками.

Я создал новое приложение Aurelia с au new, используя Typescript и RequireJS. Затем я создал простой компонент, состоящий из простого HTML.

- src
| - components
  | - rocketship
    | - rocketship.ts
    | - rocketship.html
    | - index.ts

При создании этого компонента с помощью bit build с компилятором машинописи (@0.0.5), index.js.map компилируется в следующее:

{"version":3,"file":"module.js","sourceRoot":"","sources":["module.tsx"],"names":[],"mappings":";;AAAA,2CAAsC;AAA7B,kCAAA,SAAO,EAAA"}

Это ссылается на файл module.js который нигде не определен, что заставляет меня верить, что это является причиной проблемы, с которой я столкнулся.

Когда я устанавливаю компонент через NPM и добавляю его в aurelia.json как это:

{
  "name": "@bit/user.workspace.components.rocketship",
  "path": "../node_modules/@bit/user.workspace.components.rocketship/dist",
  "main": "index"
}

И запустите приложение, используя au run -w Я получаю ошибку:

Error: An error occurred while trying to read the map file at C:\Git\Aurelia test application\node_modules\@bit\user.workspace.components.rocketship\dist\module.js.map
Error: ENOENT: no such file or directory, open 'C:\Git\Aurelia test application\node_modules\@bit\user.workspace.components.rocketship\dist\module.js.map'
    at readFromFileMap (C:\Git\Aurelia test application\node_modules\aurelia-cli\lib\build\convert-source-map\index.js:32:11)
    at new Converter (C:\Git\Aurelia test application\node_modules\aurelia-cli\lib\build\convert-source-map\index.js:39:32)
    at Object.exports.fromMapFileComment (C:\Git\Aurelia test application\node_modules\aurelia-cli\lib\build\convert-source-map\index.js:112:10)
    at Object.exports.fromMapFileSource (C:\Git\Aurelia test application\node_modules\aurelia-cli\lib\build\convert-source-map\index.js:131:22)
    at acquireSourceMapForDependency (C:\Git\Aurelia test application\node_modules\aurelia-cli\lib\build\bundle.js:184:33)
    at work.then (C:\Git\Aurelia test application\node_modules\aurelia-cli\lib\build\bundle.js:206:25)
    at <anonymous>

Поэтому Aurelia CLI пытается прочитать файл module.js.map в папке компонента, которая не существует. Что-то не так с транспортером Typescript? Или Аурелия не способна справиться с результатом перенесенного компонента?

Транспортер, который я использую,

bit.envs/compilers/typescript@0.0.5

2 ответа

Текущий компилятор машинописи работает с жестко запрограммированной конфигурацией, если вы используете это: https://bitsrc.io/bit/envs/compilers/typescript/code Если вы хотите настроить compilerOptions вам нужно будет разветвить компоненты и настроить их так, как вы хотите.

Под вилкой подразумевается импорт компонента, внесение изменений, маркировка и экспорт в новую область.

Проблема в том, что используемая вами битовая среда имеет собственную конфигурацию, которая отличается от той, которая установлена ​​в вашем проекте. Это связано с тем, что в данный момент Bit поставляется с собственным набором жестко заданных конфигураций.

Вот предлагаемый рабочий процесс для разветвления и перенастройки существующей битовой среды:

  1. Создайте новый каталог и пустую рабочую область в нем, используя bit init
  2. Импортируйте среду, которую вы хотите изменить (но без флага --compiler/tester)
  3. Откройте и измените файл конфигурации компонента
  4. Пометьте и экспортируйте новую версию компонента в свою область

Теперь у вас есть собственный компилятор с измененным набором плагинов. Следующим шагом будет возврат к вашему проекту и изменение bit.json файл, чтобы указать на новый компилятор. После перезапуска bit status чтобы увидеть, что все компоненты теперь изменены (из-за измененного компилятора). Отметьте и экспортируйте новую версию с помощью нового компилятора.

Другие вопросы по тегам