最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用node打造自己的命令行工具方法教程

 更新時(shí)間:2018年03月26日 15:47:24   作者:crp205  
這篇文章主要介紹了使用node打造自己的命令行工具方法教程,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧

一、實(shí)現(xiàn)一個(gè)簡(jiǎn)單的功能

二、環(huán)境

1.系統(tǒng): window 10
2.編輯器: vscode
3.node版本: 8.7.0

三、開始玩

1.打開命令行,新建一個(gè)pa'ckage.json

npm init

這時(shí)看到一個(gè)新的package.json生成了,使用編輯器打開

2.修改package.json,新增一個(gè)bin屬性

  {
   "name": "my-cli",
   "version": "1.0.0",
   "description": "",
   "main": "index.js",
   "bin": { // 增加bin屬性
     "auto": "./bin/cli.js" 
     // 左邊的crp是定義的命令行的名字,可以自己隨便取, 右邊是命令行輸入 crp 時(shí)會(huì)執(zhí)行的文件(一定要在bin文件夾下)
   },
   "scripts": {
    
   },
   "keywords": [],
   "author": "",
   "license": "ISC"
  }

3.新建一個(gè)cli.js在當(dāng)前的目錄下, 簡(jiǎn)單修改

console.log('hello world')

4.然后轉(zhuǎn)到命令行, 輸入

npm link

5 查看一下效果


正確打印出hello world就是成功了

6.實(shí)現(xiàn)預(yù)覽的效果

原理就是執(zhí)行cli.js的時(shí)候,會(huì)讀取自己設(shè)定好的模板,然后在當(dāng)前的目錄下生成一個(gè)文件,

寫入模板的內(nèi)容,簡(jiǎn)單的代碼如下

  #! /usr/bin/env node
  const fs = require('fs')
  const exec = require('child_process').exec
  var args = process.argv.slice(2) // 可以通過process.argv這里獲得你輸入的參數(shù)
  //讀取內(nèi)容(在當(dāng)前的目錄下新建template文件夾和加入一個(gè)template.vue的模板)
  var content = fs.readFileSync('./template/template.vue')
  //生成內(nèi)容
  fs.writeFileSync(args[0], content)
  // 使用vscode打開
  exec('code ' + args[0])

然后放開你的腦洞, 你就能組合出許多你自己喜歡的命令來(lái)享受你的工具了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • node.js中的path.delimiter方法使用說(shuō)明

    node.js中的path.delimiter方法使用說(shuō)明

    這篇文章主要介紹了node.js中的path.delimiter方法使用說(shuō)明,本文介紹了path.delimiter的方法說(shuō)明、語(yǔ)法、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • Node.js高級(jí)編程使用RPC通信示例詳解

    Node.js高級(jí)編程使用RPC通信示例詳解

    這篇文章主要為大家介紹了Node.js高級(jí)編程使用RPC通信示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime 庫(kù)進(jìn)行日期格式化的實(shí)現(xiàn)方法

    Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime

    這篇文章主要介紹了Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime 庫(kù)進(jìn)行日期格式化的實(shí)現(xiàn)方法,結(jié)合具體實(shí)例形式分析了express框架引入EJS模版以及導(dǎo)入 silly-datetime 庫(kù)的格式化方法傳遞給EJS模版使用的相關(guān)操作技巧,需要的朋友可以參考下
    2023-05-05
  • node.js中的querystring.escape方法使用說(shuō)明

    node.js中的querystring.escape方法使用說(shuō)明

    這篇文章主要介紹了node.js中的querystring.escape方法使用說(shuō)明,本文介紹了querystring.escape的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 手把手教你VSCode配置JavaScript基于Node.js的調(diào)試環(huán)境

    手把手教你VSCode配置JavaScript基于Node.js的調(diào)試環(huán)境

    最近在補(bǔ)數(shù)據(jù)結(jié)構(gòu),在用VScode調(diào)試js代碼文件結(jié)果怎么都不行,這篇文章主要給大家介紹了關(guān)于VSCode配置JavaScript基于Node.js的調(diào)試環(huán)境的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • webstorm配置支持nodejs并自動(dòng)補(bǔ)全的方法

    webstorm配置支持nodejs并自動(dòng)補(bǔ)全的方法

    今天小編就為大家分享一篇webstorm配置支持nodejs并自動(dòng)補(bǔ)全的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2018-05-05
  • 初識(shí)Node.js

    初識(shí)Node.js

    本文給大家介紹的是node.js的初體驗(yàn),從最簡(jiǎn)單的內(nèi)容開始,慢慢的深入分析node.js。并附上一則很不錯(cuò)的文章《7天學(xué)會(huì)nodeJS》更加詳細(xì)的向我們展示了node.js的學(xué)習(xí)步驟。
    2015-03-03
  • 玩轉(zhuǎn)Koa之核心原理分析

    玩轉(zhuǎn)Koa之核心原理分析

    這篇文章主要介紹了玩轉(zhuǎn)Koa之核心原理分析,本文從封裝創(chuàng)建應(yīng)用程序函數(shù)、擴(kuò)展res和req、中間件實(shí)現(xiàn)原理、異常處理的等這幾個(gè)方面來(lái)介紹,感興趣的可以了解一下
    2018-12-12
  • 關(guān)于npm源查詢與切換方式

    關(guān)于npm源查詢與切換方式

    這篇文章主要介紹了關(guān)于npm源查詢與切換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Express實(shí)現(xiàn)定時(shí)發(fā)送郵件的示例代碼

    Express實(shí)現(xiàn)定時(shí)發(fā)送郵件的示例代碼

    在開發(fā)中我們有時(shí)候需要每隔?一段時(shí)間發(fā)送一次電子郵件,或者在某個(gè)特定的時(shí)間進(jìn)行發(fā)送郵件,無(wú)需手動(dòng)去操作,基于這樣的情況下我們需要用到了定時(shí)任務(wù)。本文就來(lái)用Express實(shí)現(xiàn)定時(shí)發(fā)送郵件吧
    2023-04-04

最新評(píng)論

孟连| 滦南县| 扎赉特旗| 江油市| 犍为县| 三穗县| 贺兰县| 恩平市| 蓝山县| 邹城市| 田阳县| 长乐市| 晋江市| 务川| 广汉市| 寿光市| 张家口市| 普定县| 芜湖县| 许昌市| 图木舒克市| 蒲城县| 张家港市| 白沙| 郯城县| 疏勒县| 顺昌县| 冕宁县| 黎城县| 安丘市| 蓬安县| 西吉县| 嫩江县| 郧西县| 龙陵县| 龙胜| 安阳市| 思南县| 丹凤县| 长泰县| 赣州市|