front-kgm-cli
v1.0.1
Published
前端工程化
Downloads
4
Readme
front-kgm-cli
脚手架开发流程
开发流程
创建 npm 项目
配置 package.json, 添加 bin 属性
"bin": {
"front-kgm-cli": "bin/index.js"
}
创建文件 bin/index.js
const params = process.argv.slice(2);
console.log("welcome front-kgm-cli:", params);
发布
本地 link 流程
链接本地脚手架
cd my-cli-dir
npm link
链接本地库文件
cd my-lib-dir
npm link
cd my-cli-dir
npm link
取消链接本地库文件
cd my-lib-dir
npm unlink
cd my-cli-dir
# link存在
npm unlink my-lib
# link不存在
rm -rf node_modules
npm i
理解 npm link
npm link my-lib: 将当前项目中的 node_modules 下指定的库文件链接到全局 node_modules 下的库文件
npm link: 将当前项目链接到 node 全局 node_modules 中作为一个库文件,并解析 bin 配置创建可执行文件
理解 npm unlink
npm unlink my-lib: 将当前项目中的库文件依赖移除
npm unlink: 将当前项目从 node 全局 node_modules 中移除
使用流程
安装脚手架
npm i -g front-kgm-cli
使用脚手架
front-kgm-cli
lerna 开发流程
安装插件
cnpm i -g lerna
初始化
lerna init # 初始化
lerna -v # 版本号
lerna -h # 帮助文档
创建一个新的由 lerna 管理的包
lerna create <name>
流程实操
创建核心包
lerna create core
packages/core/bin/front-kgm-cli.js
#!/usr/bin/env node
require("../libs")();
packages/core/bin/package.json
{
"name": "@front-kgm-cli/core",
"bin": {
"front-kgm-cli": "bin/front-kgm-cli.js"
},
}
packages/core/lib/index.js
"use strict";
module.exports = init;
function init(options) {
console.log("init-", options);
}
登陆 npm
npm adduser # 输入用户名密码邮箱
包发布
npm publish --access=public