package文件解析
发布一个package,name、version是必须的,它们一起组成一个唯一标示,不发布就是可选的;
name必须<=214个字符,不能以.或者_开头;不能有大写字母;不能包含非url安全字符;
在.npmignore里添加不需要包含的文件,格式和.gitignore一样,如果有.gitignore文件,会忽略.npmignore;
main
main字段是一个模块id,是你项目的主要入口;如果你的package名字是foo,一个用户安装了它,然后require(‘foo’),这时,你的main模块的输出对象就会返回;
browser
如果你的模块是用在浏览器客户端的话,要用browser替代main;
bin
很多package都有一些可执行文件,它们会安装到PATH;...
npm 配置文件
npm 配置文件
npm 可以从命令行,环境变量和npmrc文件得到配置信息;
npm config用来更新和编辑用户和全局 npmrc 文件的配置信息;
每一个项目的配置文件 (/path/to/my/project/.npmrc)
每一个用户的配置文件 (~/.npmrc)
全局配置文件 ($PREFIX/etc/npmrc)
npm内置的配置 (/path/to/npm/npmrc)
所有的配置文件都是key=value形式的,环境变量可以使用${变量名}被替代;例如prefix = ${HOME}/.npm-packages;
数组格式的配置这样写,
key[] = "first value"
key[] = "second value"
安装相关
npm i 会安装所有...
generate 函数
function *foo(x){
let y=x * (yield 'hello')
return y
}
var f=foo(2) //1
var m=f.next() //2
console.log(m)//m.value='hello'
f.next(3)//result=6 //3
//1 并没有执行函数,而是创建了一个iterator对象,然后赋值给f;
next()调用的结果是返回一个object对象,value值来自当前yield后面的参数;next传入的值可以看做yield执行的结果值;
yield作为一个表达式,可以发送数据响应next调用,next可以发送数据到暂停的yield;
sourcemap 翻译
sourcemap是一种映射方法,能将压缩整合过的代码还原到未构建前的状态,
The anatomy of a source map
{
version : 3, //source map基于的版本
file: "out.js",//经过压缩简化等操作产生的生产代码
sourceRoot : "",//添加文件结构
sources: ["foo.js", "bar.js"],//源文件,编译前的文件
names: ["src", "maps", "are", "fun"],//代码中包含的变量方法的名称
mappings: "AAgBC,SAAQ,CAAEA"//最新的map属性,节省空间
}
TODO
source-map
so...
共计 109 篇文章,22 页。