使用Aurelia CLI安装任何npm模块的分步过程是什么?

时间:2016-11-27 06:51:55

标签: javascript aurelia

我想安装jquery并在此处找到说明:

http://aurelia.io/hub.html#/doc/article/aurelia/framework/latest/contact-manager-tutorial/4

然后我想安装“moment.js”并在这里找到说明(我没有使用打字稿):

How to import Moment-Timezone with Aurelia/Typescript

要使用Aurelia CLI安装这两个程序,程序是安装相应的npm模块,然后以某种方式手动手动修改aurelia.json,以便应用程序识别它。

如果有时刻,说明会说导入位于app.js的顶部,但JQuery不是这样。

首先,是否有任何方式可以自动更改aurelia.json(如常规node.js package.json),因此我不需要手动执行此操作,其次,我如何知道我希望对我想要安装的模块的aurelia.json(或app.js或任何其他文件)进行哪些修改?

使用基本的node.js应用程序非常简单,只需安装npm。 Aurelia让人感到更加困惑。

编辑:还有一个JSPM I've read用于前端库,就像我上面提到的那样。但是,我发布的安装说明链接使用JSPM。

修改

我在这里找到了一些答案: http://aurelia.io/hub.html#/doc/article/aurelia/framework/latest/the-aurelia-cli/6

1 个答案:

答案 0 :(得分:2)

CLI仍处于开发阶段。我认为有时候自动添加软件包可能会包含在CLI本身中,例如使用安装命令。

需要额外注册才能正确注册包以与RequireJS(http://requirejs.org/)一起使用。如果插件不仅仅存在1个文件,那么这个注册就比添加插件的名称要复杂一些。

这里有一个实验性的CLI任务https://github.com/martonsagi/aurelia-cli-pacman,可以为您自动完成。

可以通过运行来安装:

npm install aurelia-cli-pacman -D

上面将安装包管理器并在当前项目的任务中注册/包含它自己(确保在安装时运行它,因为如果你运行i速记,npm不会运行安装后脚本)。接下来,您可以运行以下命令来安装扩展程序:

npm i aurelia-interactjs -S

au pacman i aurelia-interactjs

许多人唯一的缺点可能是目前还没有那么多的注册表项,但我认为如果你通过创建拉伸来扩展注册表来帮助他,那么包的作者会非常高兴。您需要一些时间来弄清楚正确的安装/导入设置是什么,但是当他们遇到您遇到的同样问题时,您会帮助其他人并让他们开心: - )。

JSPM在此问题上存在同样的问题,只是更成熟/注册表更大和/或作者将JSPM安装的特定信息添加到他们的package.json中。例如:要使用JSPM安装上述插件,它将使用以下突出显示的部分https://github.com/eriklieben/aurelia-interactjs/blob/master/package.json#L72,L86。 aurelia-cli目前无法做到这一点,因为安装是由NPM完成的,而不是通过JSPM将其重定向到NPM。

如果插件的作者没有在package.json中指定JSPM部分,那么您很可能会遇到同样的问题。 JSPM有一个类似的注册表(https://github.com/jspm/registry/tree/master/package-overrides/npm)作为aurelia-cli-pacman。