Aurelia应用程序之间的ES2016代码重用

时间:2016-04-08 09:46:34

标签: ecmascript-6 babeljs aurelia jspm babel-6

在处理大量Aurelia应用程序时,我们达到了需要在这些应用程序之间共享代码的程度。

要共享的代码不是我们(实际上是我们的客户)希望开源的代码。所以我们考虑创建私有jspm软件包,以便我们可以在需要时轻松地重用我们的模块。这个想法的灵感来自于这个blogpost

Jspm does support linking packages as well这是我们在开发过程中真正想要使用的东西,因为要重用的代码还不够稳定。

包含链接的jspm软件包的工作流程

因此,我们的工作流程是使用ES2016代码创建不同数量的项目/模块,并从这些项目创建jspm包。然后将在我们的应用程序中安装和链接这些包。

Transpiling

据我们所知,在将jspm软件包安装到项目中之前需要对其进行转换。因此,如果有任何更改,我们始终需要转换代码。

根据这个systemjs/babel-plugin documentationversion 0.17(此时处于测试阶段)将立即得到支持。目前,我们正在使用jspm版本0.16.32,它不支持babel 6

不知何故,这个工作流程感觉过度设计,所以我们在应用程序中即时考虑,但我们担心性能损失。

您如何在不同的Aurelia应用程序之间共享es2016代码?

有没有使用jspm包来实现代码重用?

1 个答案:

答案 0 :(得分:1)

我个人会将软件包发布到某种内部的npm feed。设置内部订阅源以镜像公共npm订阅源,然后将.npmrc设置为指向私有订阅源。然后只是

jspm install npm:my-private-package