JavaScript经典工具库
https://github.com/sorrycc/awesome-javascript
https://www.cnblogs.com/fundebug/p/13_js_utilities_you_need.html
Underscore或者Lodash
Ramda
MathJS
Moment & date-fns
Sugar
Lazy
CollectJS
ChanceJS
ChartJS
Polished
Mout
Voca
Licia
常见命令
安装包
# 本地安装 ###
# 将安装包放在 ./node_modules 下(运行 npm 命令时所在的目录),如果没有 node_modules 目录,会在当前执行 npm 命令的目录下生成 node_modules 目录
npm install express
# 全局安装
# 将安装包放在 /usr/local 下或者你 node 的安装目录
# 可以直接在命令行里使用
npm install express -g
# 查看依赖包(可以在不下载安装的情况下查看依赖包) ###
npm view express dependencies
卸载包
# 卸载包不更新package.json
npm uninstall lodash
# 卸载包更新package.json
# 要从package.json文件的依赖列表中移除,你需要使用--save标签:
npm uninstall --save lodash
查看包版本信息
# 查看npm服务器上所有的jquery版本列表
npm view jquery versions
# 查看jquery最新版本
npm view jquery version
# 查看jquery最新版本的详细信息
npm info jquery
# 查看本地安装的版本信息
npm ls jquery
升级所有包到最新版本
# 检查更新包
npm-check-updates 或者 ncu
# 升级package.json
ncu -u
# 安装包
npm install
目前支持以下几类依赖包环境管理
dependencies
devDependencies
peerDependencies
optionalDependencies
bundleDependencies
# 经测试每个包只能属于以下其中一个依赖环境里面:devDependencies、dependencies、peerDependencies、optionalDependencies、bundledDependencies
# 对应的命令解释如下
-P, --save-prod: Package will appear in your dependencies. This is the default unless -D or -O are present.
-D, --save-dev: Package will appear in your devDependencies.
-O, --save-optional: Package will appear in your optionalDependencies.
--no-save: Prevents saving to dependencies.
-E, --save-exact: Saved dependencies will be configured with an exact version rather than using npm's default semver range operator.
-B, --save-bundle: Saved dependencies will also be added to your bundleDependencies list.
如果你想使用哪种依赖管理,那么你可以将它放在package.json中对应的依赖对象中,比如:
"devDependencies": {
"fw2": "^0.3.2",
"grunt": "^1.0.1",
"webpack": "^3.6.0"
},
"dependencies": {
"gulp": "^3.9.1",
"hello-else": "^1.0.0"
},
"peerDependencies": { },
"optionalDependencies": { },
"bundledDependencies": []
# 对应安装命令
# 一键安装package.json里的所有依赖文件
npm install
# 只安装package.json里的dependencies(运行依赖)文件
npm install --dependencies
# 只安装package.json里的devDependencies(开发依赖)文件
npm install --devDependencies
# 更新依赖到最新版本
npm install -g npm-check-updates
项目示例
创建测试目录
mkdir npmtest && cd npmtest
npm创建项目
# 其实就是生成package.json
npm init
# 或者静默初始化
npm init --yes
package name: 你的项目名字叫啥
version: 版本号
description: 对项目的描述
entry point: 项目的入口文件(一般你要用那个js文件作为node服务,就填写那个文件)
test command: 项目启动的时候要用什么命令来执行脚本文件(默认为node app.js)
git repository: 如果你要将项目上传到git中的话,那么就需要填写git的仓库地址(这里就不写地址了)
keywirds: 项目关键字(索引使用?)
author: 作者的名字(也就是你叫啥名字)
license: 发行项目需要的证书(这里也就自己玩玩,就不写了)
# 示例
{
"name": "npmtest",
"version": "1.0.0",
"description": "npm测试",
"main": "index.js",
"scripts": {
"test": "node app.js"
},
"author": "zaza",
"license": "ISC"
}
# 编写app.js
echo "console.log('我已经成功运行了')" > app.js
# 运行scripts的test命令
npm test
# 可以增加自己的命令(各种参数命令都可以声明了),将示例的scripts改成
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js"
},
# 执行测试
npm start
npm test
# 安装依赖包(--save参数将配置写入package.json)
npm install lodash --save
# 测试依赖包
vim app.js
var lodash = require('lodash');
var output = lodash.without([1, 2, 3], 1);
console.log(output);
# 测试
npm start
# 如果没有正确安装则会报一下错误
module.js:340
throw err;
^
Error: Cannot find module 'lodash'
参考