差别
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 |
it:node:命令行 [2021-11-28 16:51] – [readline] goldentianya | it:node:命令行 [2023-08-07 16:19] (当前版本) – [建立程序] goldentianya |
---|
| |
===== 建立程序 ===== | ===== 建立程序 ===== |
| |
| 准备:在服务器上安装 node.js 以及 npm |
| <code shell> |
| sudo apt install nodejs |
| sudo apt install npm |
| </code> |
| |
首先初始化一個項目((a>[[https://segmentfault.com/a/1190000039110450|Node.js-CLI开发工具]])) <color #ff7f27>''%%npm init%%''</color>,在 package.json 中設定工具名稱 | 首先初始化一個項目((a>[[https://segmentfault.com/a/1190000039110450|Node.js-CLI开发工具]])) <color #ff7f27>''%%npm init%%''</color>,在 package.json 中設定工具名稱 |
</code> | </code> |
| |
在本目錄下全局安裝 <color #ff7f27>''%%npm install -g%%''</color> 後即可使用 <color #ff7f27>''%%golden xxx%%''</color> 命令。 | 在本目錄下全局安裝 <color #ff7f27>''%%npm install -g%%''</color> 後即可使用 <color #ff7f27>''%%golden xxx%%''</color> 命令。 (因为在package.json中已经定义了bin的执行路径) |
| |
===== 交互式命令行 ===== | ===== 交互式命令行 ===== |
return new Promise((resolve, reject) => { | return new Promise((resolve, reject) => { |
this.observer.subscribe((value:any) => { | this.observer.subscribe((value:any) => { |
resolve(value.trim()) | resolve(value.trim()) |
}); | }); |
}) | }) |
====== 交互工具 ====== | ====== 交互工具 ====== |
| |
需要借助 inquire.js ((c>[[https://blog.csdn.net/qq_26733915/article/details/80461257|inquirer.js —— 一个用户与命令行交互的工具]])) 庫來實現命令交互。 | 需要借助 inquire.js ((c>[[https://blog.csdn.net/qq_26733915/article/details/80461257|inquirer.js —— 一个用户与命令行交互的工具]])) ((d>[[https://www.npmjs.com/package\//inquirer|Inquirer.js <em>''\//'']]))庫來實現命令交互。 |
| |
安裝工具 <color #ff7f27>''%%npm install inquirer%%''</color> 後在js/ts文件中使用: | 安裝工具 <color #ff7f27>''%%npm install inquirer%%''</color> 後在js/ts文件中使用: |
回到顶部