Skip to content
On this page

package

TIP

package 常见的一些字段用途

npm package main

TIP

main属性指定了程序的主入口文件。也就是说,如果你的包名为foo,并且用户安装了它,然后require("foo"),那么你的主模块的exports对象将被返回。

如:

json
{
  "main": "src/index.js",
}
js
// src/index.js
import XXXX from '@/XXX-menu';

export default XXXX;

使用改包引入方式就是:

js
import XXXMenu from '@xxxx/xxxx-menu';

总结:npm package main是主文件入口就是你的npm包发布了,被别人引入的就是你的main指定的路径。在查看npm源码的时候可以从主入口开始,方便查阅

npm package bin

TIP

很多模块有一个或多个需要配置到PATH路径下的可执行模块,npm让这个工作变得十分简单(实际上npm本身也是通过bin属性安装为一个可执行命令的)

例如xx-script

json
{
  "bin": {
    "xx-scripts": "bin/index.js"
  },
}

npm package files

TIP

"files"属性的值是一个数组,内容是模块下文件名或者文件夹名,如果是文件夹名,则文件夹下所有的文件也会被包含进来(除非文件被另一些配置排除了)你也可以在模块根目录下创建一个".npmignore"文件(windows下无法直接创建以"."开头的文件,使用linux命令行工具创建如git bash),写在这个文件里边的文件即便被写在files属性里边也会被排除在外,这个文件的写法".gitignore"类似。

npm package repository

TIP

指定一个代码存放地址,对想要为你的项目贡献代码的人有帮助。像这样:

json
{
  "repository" :{ "type" : "git", "url" : "https://github.com/npm/npm.git" },
  "repository":{ "type" : "svn", "url" : "https://v8.googlecode.com/svn/trunk/"}
}

npm package config

TIP

用法跟上面获取package config一致

json
{
   "config" : { "port" : "8080" } 
}

使用:

js
console.log(process.env.npm_package_config_port,'process.env.npm_package_config_port')

npm package keywords

TIP

一个字符串数组,方便别人搜索到本模块。 例如:

json
{
  "keywords": [
    "menu",
  ], 
}

npm package homepage

TIP

项目主页URL,例如VUE:

json
{
  "homepage": "https://github.com/vuejs/vue#readme",
}

npm package bugs

TIP

填写一个bug提交地址或者一个邮箱,被你的模块坑到的人可以通过这里吐槽,例如:

json
{
  "bugs": {
    "url": "https://github.com/vuejs/vue/issues",
    "email": "xxxxxxxx"
  },
}

npm package publishConfig

TIP

这个配置是会在模块发布时用到的一些值的集合。如果你不想模块被默认被标记为最新的,或者默认发布到公共仓库,可以在这里配置tag或仓库地址。例如:

json
{
  "publishConfig": {
    "registry": "https://registry.xxxxxx/"
  },
}

Released under the MIT License.