【HZHV】从0到1阅读Vue@0.6.0源码——package.json文件
作者:互联网
vue@0.6.0
package.json源码
{
"name": "vue",
"version": "0.6.0",
"author": {
"name": "Evan You",
"email": "yyx990803@gmail.com",
"url": "http://evanyou.me"
},
"license": "MIT",
"description": "A mini front-end MVVM framework",
"keywords": [
"mvvm",
"browser",
"framework"
],
"main": "src/main.js",
"repository": {
"type": "git",
"url": "https://github.com/yyx990803/vue.git"
},
"scripts": {
"test": "grunt test"
},
"devDependencies": {
"grunt": "~0.4.2",
"grunt-contrib-watch": "~0.5.3",
"grunt-component-build": "~0.4.1",
"grunt-contrib-jshint": "~0.7.1",
"grunt-contrib-uglify": "~0.2.7",
"grunt-mocha": "~0.4.6",
"jscoverage": "~0.3.8",
"jshint-stylish": "0.1.3",
"semver": "~2.2.1"
},
"__npminstall_done": true,
"_from": "vue@0.6.0",
"_resolved": "https://registry.npmmirror.com/vue/-/vue-0.6.0.tgz"
}
介绍
package.json 是npm init命令初始化后,在项目的根目录下自动生成的配置文件,它定义了这个项目的配置信息(比如名称、版本、许可证等元数据)以及所需要的各种模块。npm install命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。
字段含义
1.name
package的名称。不过需要注意的是,name有长度限制(虽然一般都不会超),而且name不能以 【点】 或者 【下划线】开头,name中不能有大写字母。这个是每一个package必须的。在业务代码中,通过require(${name})就可以引入对应的程序包了。
2.version
package的版本。对于业务项目来说,这个往往不太重要,但是如果你要发布自己的项目,这个就显得十分重要了。name和version共同决定了唯一一份代码。npm是用[npm-semver来解析版本号的。我们一般见到的都是大版本.次要版本.小版本这种版本号,比如16.1.0。
3.description
包的描述。开发组件库时必需,简明的向库的使用者介绍这个库是干嘛的。对于公司的业务项目,这个配置项一般无所谓。
4.author
项目的作者。可以为字符串,对象。
5.license
开源协议。对于开源组件库,这个十分重要。
6.repository
对于组件库很有用。让组件库使用者找到你的代码库地址。这个配置项会直接在组件库的npm首页生效
7.keywords
关键词。一个字符串数组,对这个npm包的介绍。组件库必需,便于使用者在npm中搜索。对于公司业务项目,这个配置一般无所谓。
8.files
数组。表示代码包下载安装完成时包括的所有文件。
9.main
代码入口。这个十分重要,特别是对于组件库。当你想在node_modules中修改你使用的某个组件库的代码时,首先在node_modules中找到这个组件库,第一眼就是要看这个main,找到组件库的入口文件。在这个入口文件中再去修改代码吧。
browser 环境和 node 环境均可使用。
模块引入方法require()在引入包时,会优先检查这个字段,并将其作为包中其余模块的入口。如果不存在这个字段,require()方法会查找包目录下的 index.js , index.node , index.json 文件作为默认入口。
10.scripts
指定了运行脚本命令的npm命令行缩写。十分重要。
脚本说明对象。它主要被包管理器用来安装,编译,测试和卸载包。
在命令行输入:npm run dev , 对应的命令就会被执行。这里有一个地方需要注意,当执行npm run xxx 的时候,node_modules/.bin/目录会在运行时被加入系统的PATH变量。
上面的例子,当我们在命令行输入:npm run build时,其实真正执行的命令是node_modules/.bin/webpack而不是webpack。所以,当你的webpack并未全局安装时,直接在命令行输入:webpack是会报错的。因为你的webapck是安装在node_modules/.bin/下面的。
11.devDependencies
项目的依赖。通过npm run install --save-dev安装的包会出现在这里。主要是在开发过程中依赖的一些工具。用法与dependencies相似
12.browser
定义 npm 包在 browser 环境下的入口文件。
13.__npminstall_done
14._from
15._resolved
标签:npm,node,Vue,name,package,vue,源码,组件,grunt 来源: https://www.cnblogs.com/Huang-zihan/p/16193092.html