1.0.1 • Published 2 years ago

front-kgm-cli v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

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 开发流程

github 地址 npm 官网

安装插件

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