jspm install和npm install

时间:2016-08-24 11:15:06

标签: jspm

我对jspm比较新。我想知道运行jspm install packagenpm install package时的区别。我知道有一个jspm / registry查找。但是在设置config.js时有什么不同。如果使用npm安装软件包,还有其他更改吗?

2 个答案:

答案 0 :(得分:4)

npm和jspm都是包管理器 npm用于节点生态系统,传统上用于后端依赖。

为了强制实现前端和后端之间的分离,开发人员使用了专门用于前端的工具。有凉亭和喜欢......以及jspm。

  

我想知道运行jspm install packagenpm install package时的区别。

以下是npm和jspm之间的一些区别:
  - jspm将其依赖项存储在jspm_packages中,而npm将它们存储在node_modules中   - jspm使用平面依赖树
  - jspm允许您配置任意注册表以获取您的依赖项(默认情况下配置github和npm)
  - 即使jspm将模块声明和映射以及配置跟踪到它自己的文件(config.json)中,它实际上定义了package.json中的项目依赖项(在属性jspm内)
  - 您可以将jspm软件包用于jspm项目,也可以用于节点/ web项目   - jspm实际上只是一个封装管理器,它包含SystemJs的配置系统

因此,当您从jspm安装软件包时,它使用SystemJs配置并设置依赖项之间的映射,允许您将项目导出为任何模块类型(AMD,CJS,esm,umd ...)。

  

如果使用npm安装软件包,还有其他更改吗?

jspm install package在jspm注册表中进行查找 如果没有找到包,则意味着您必须指定此包来自哪个注册表。

对于npm包,它是:jspm install npm:package
您当然可以通过在程序包名称的末尾附加@version来指定特定版本。

jspm还允许您声明一个简写,以便在您的代码中映射此库。

有关详细信息,请参阅文档:http://jspm.io/docs/installing-packages.html

答案 1 :(得分:0)

两者都是包管理器,基本上都是相同的功能,但这里有一些不同之处:

  • Npm将跟踪package.json文件中的包,而jspm将使用config.json文件。
  • Npm会将它的软件包存储在node_modules文件夹中,而jspm会使用jspm_components文件夹。
  • Jspm更常用于引入客户端\前端库和npm用于服务器端库。

恢复包通常如下:

  • 运行npm install(应在其他库中安装jspm)
  • 运行jspm install