当你要将你的代码发布到npm上时你需要关注package中这些配置

8次阅读

共计 725 个字符,预计需要花费 2 分钟才能阅读完成。

main(定义项目入口)

main 字段是 package.json 中的另一种元数据功能,它可以用来指定加载的入口文件。假如你的项目是一个 npm 包,当用户安装你的包后,require(‘my-module’) 返回的是 main 字段中所列出文件的 module.exports 属性。
当不指定 main 字段时,默认值是模块根目录下面的 index.js 文件。

bin (自定义命令)

用过 @vue/cli,create-react-app 等脚手架的朋友们, 应该都知道
vue create 或 create-react-app 之类的命令,其实这和 package.json 中的 bin 字段有关。
bin 字段用来指定各个内部命令对应的可执行文件的位置。当 package.json 提供了 bin 字段后,即相当于做了一个命令名和本地文件名的映射。
当用户安装带有 bin 字段的包时,

如果是全局安装,npm 将会使用符号链接把这些文件链接到 /usr/local/node_modules/.bin/;
如果是本地安装,会链接到 node_modules/.bin/
例如 @babel/cli 的 packge.json

"bin": {

"babel": "./bin/babel.js",

"babel-external-helpers": "./bin/babel-external-helpers.js"

}

当我们在命令行执行 babel 或者 babel-external-helpers 的时候就相应的执行了 ”./bin/babel.js” 和 ”babel-external-helpers”

file(包含在项目中的文件数组)

指定目录或者文件发布到 npm 平台上,其余的文件夹里的会传到 github 上,并不会被发布到 npm 平台上。

正文完
 0