Работая над несколькими приложениями Aurelia, мы пришли к тому, что нам нужно использовать общий код между этими приложениями.
Код для совместного использования — это не то, что мы (фактически наш клиент) хотели бы иметь в открытом доступе. Поэтому мы подумали о создании частных пакетов jspm, чтобы при необходимости можно было легко повторно использовать наши модули. Эта идея основана на этом сообщение в блоге
Jspm также поддерживает связывание пакетов, поэтому мы действительно хотели бы использовать это во время разработки, поскольку код для повторного использования еще недостаточно стабилен.
Рабочий процесс со связанными пакетами jspm
Таким образом, наш предполагаемый рабочий процесс состоит в том, чтобы создать различное количество проектов/модулей с кодом ES2016
и создать пакеты jspm из этих проектов. Затем эти пакеты будут установлены и связаны в наших приложениях.
Транспиляция
Насколько нам известно, пакеты jspm необходимо транспилировать, прежде чем вы установите их в свой проект. Поэтому нам всегда нужно транспилировать код, если есть какие-либо изменения.
В соответствии с этой документацией systemjs/babel-plugin будет поддерживаться транспиляция "на лету" в version 0.17
(на данный момент находится в стадии бета-тестирования). В настоящее время мы используем jspm
версию 0.16.32
, которая не поддерживает транспиляцию "на лету" с babel 6
.
Почему-то этот рабочий процесс кажется слишком сложным, поэтому мы рассматриваем транспиляцию «на лету» в наших приложениях, хотя и опасаемся снижения производительности.
Как бы вы подошли к совместному использованию кода es2016
между различными приложениями Aurelia?
Можно ли как-то добиться повторного использования кода без использования пакетов jspm?
gulp bump-release
или чего-то подобного в сочетании сjspm update
у нас есть управление версиями. Таким образом, мы можем контролировать процесс обновления в каждом проекте, и нам не нужно молиться о критических изменениях ;-) В конце концов, мы говорим о пакетах, которые мы разрабатываем сами, поэтому критические изменения - это наименьшая из наших забот; -) - person Andrew   schedule 08.04.2016