10 분 동안 npm 를 통 해 명령 행 도 구 를 만 듭 니 다.

6175 단어 json자바 script
설날 인 데 코드 를 좀 써 서 놀 라 게 할 까요?npm 를 통 해 명령 행 도 구 를 만 드 는 방법 을 10 분 동안 배 워 보 세 요.
대신 사용 할 작은 demo 를 썼 습 니 다 touch 의 파일 생 성 명령 touchme 은 '부처님 보우' 주석 을 가 진 파일 을 만 들 수 있 습 니 다.효 과 는 다음 과 같 습 니 다: 
명령 은 주석 기 호 를 선택 하 는 매개 변 수 를 가 질 수 있 습 니 다.
이제 코드 훑 기 시작 ~
우선 폴 더 를 만 들 고 이름 을 지 을 게 요.  create-file-cli  그리고 npm init 명령 을 통 해 package.json 파일 을 만 듭 니 다.
$ mkdir create-file-cli

$ cd create-file-cli

$ npm init -y

그리고 package.json 필드 를 추가 하여 bin 명령 을 정의 하고 이 명령 이 실 행 된 파일 을 지정 합 니 다.
{
  "name": "create-file-cli",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "bin": {
    "touchme": "bin/touchme.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

이어서 실현 하 다  touchme  ,필요 하 다  Commander.js -- node. js 명령 행 인터페이스의 완전한 해결 방안영어 문 서 를 못 읽 고 마음 에 드 는 중국어 README.bin/touchme.js 다음 과 같다.
#!/usr/bin/env node

const program = require('commander');
const gen = require('../lib/generate-file');

program
  //     
  .version('0.0.4', '-v, --version')
  //     
  .usage(' [options]')
  //             
  //                  program.copy        
  //            true
  .option('-c, --copy ', 'copy file and add comment')
  .option('-H, --hashtag', `comment by '#'`)
  .option('-s, --slash', `comment by '/'`)
  .parse(process.argv);

function resolve(program) {
  //                   args  
  const { copy, hashtag, slash, args } = program;
  if (!args.length) {
    console.log('Please input filename.');
    return;
  }
  if (copy === true) {
    console.log('You should copy at least one file.');
    return;
  }
  let type = 'star';
  if (slash) type = 'slash';
  if (hashtag) type = 'hashtag';
  for (let i = 0; i < args.length; i++) {
    gen(args[i], copy, type);
  }
}

resolve(program);

구체 적 lib / generate - file. js 구현 https://github.com/G-lory/create-file-cli/ 간단하게 파일 을 만 들 고 주석 을 쓰 는 것 입 니 다.
option 을 통 해 명령 옵션 을 정의 하고 인 자 를 정의 할 수 있 습 니 다.
program 을 통 해 명령 행 에 입력 한 매개 변수 정 보 를 얻 을 수 있 습 니 다.
이제 기능 을 다 썼 으 니 남 은 일 은 발표 하 는 것 이다.먼저 https://www.npmjs.com 가방 이름 이 발 표 된 사람 이 있 는 지 찾 아 보 세 요. 있 으 면 가방 이름 을 먼저 수정 해 야 합 니 다.그리고 https://www.npmjs.com 계 정 을 만들다.자신의 계 정 비밀번호 와 메 일 을 기억 하고 명령 행 으로 돌아 갑 니 다.
$ npm login
Username: ...
Password: 
Email: (this IS public)
Logged in as ... on https://registry.npmjs.org/.

로그 인 성공 후 표시 되 는 것 은https://registry.npmjs.org/ 많은 학우 들 이 타 오 바 오의 미 러 를 설 치 했 는데 표시 되 는 것 은 이 주소 가 아니 므 로 고 쳐 야 한다.
$ npm config set registry=http://registry.npmjs.org

그리고 가방 을 발표 할 수 있 습 니 다.
$ npm publish

나중에 수정 이 있 으 면 변경 하 세 요.  bin/touchme.js 의 버 전 번 호 를 다시 실행 하면 됩 니 다 package.json.
발표 후 npm 사이트 에 가서 자신의 가방 을 검색 할 수 있 습 니 다.그리고 설치 테스트 기능.
전역 설치
npm install create-file-cli -g

그리고 npm publish 명령 으로 파일 을 만 들 수 있 습 니 다.touchme 로 도움말 을 볼 수도 있다.
명령 행 도 구 를 만 드 는 데 성 공 했 습 니 다.
처음으로 금 을 파 서 글 을 쓰 는 것 은 매우 물, 응, 새해 에는 힘 낼 거 야.
다음으로 전송:https://juejin.im/post/5c583a8fe51d457fd77b1284

좋은 웹페이지 즐겨찾기