検索

npmに履歴書を作成する方法

ちょうど昨日、アリの教会員は、CSSグリッドレイアウトを使用して履歴書を作成するためのきちんとした方法を共有しました。コマンドラインを使用したいときにいつでもスピンアップできるテンプレートを作成することで、それを少しだけ構築しましょう。それについてのクールなことは、たった1つのコマンドでそれを実行できることです。

コマンドラインが威圧的になる可能性があることはわかっています。はい、node.jsで作業します。私たちは物事を小さなステップに分解し、それを追いかけやすくします。

多くのプロジェクトと同様に、少しセットアップが関係しています。ワーキングディレクトリに空のフォルダーを作成し、NPMまたはYARNを使用してプロジェクトを初期化することから始めます。

 mkdir your-project && cd "$ _"

## npm
npm init

## Yarn
糸init

「Your-Project」に使用する名前は、NPMレジストリのパッケージの名前です。

次のステップは、アプリケーションのエントリファイル、つまりこの場合のindex.jsを作成することです。また、データを保存する場所も必要なので、data.jsonという別のファイルを作成します。それらを作成すると、コマンドラインからそれらを開くことができます:

 index.js && touch data.jsonをタッチします

コマンドラインインターフェイスの作成

このアプリを作成することで得られる大きな利点は、コマンドラインに直接履歴書を作成する半視覚的な方法を提供することです。それを実現するにはいくつかのことが必要です:

  • データを保存するオブジェクト
  • インタラクティブコマンドラインインターフェイス(Inquirer.jsを使用して構築する)

その最初のものから始めましょう。 Open data.jsonをクラックし、次を追加します。

 {
  "教育": [
    「いくつかの情報」、
    「それほど重要ではない情報」、
    「など」
  ]、、
  "経験": [
    「いくつかの情報」、
    「それほど重要ではない情報」、
    「など」
  ]、、
  "接触": [
    「あなたに連絡する方法」
  ]
}

これは、インターフェイス内の各ステップに使用されるオブジェクトとキーを定義する単なる例です。自分のニーズに合わせて完全に変更できます。

それが私たちが最初に必要としたものです。 2つ目は、インタラクティブなインターフェイスです。 Inquirer.jsは90%を処理します。このパッケージの詳細については、お気軽に読んでください。そのため、より高度なインターフェイスを構築できます。

 YarnはInquirer Chalkを追加します

そのチョークのことは何ですか?これは、より良い体験のために色とスタイリングを追加することで、ターミナル出力をカスタマイズするのに役立つライブラリです。

次に、index.jsを開いて、次のコードを貼り付けましょう。

 #!/usr/bin/envノード

「Strictを使用」;

const Inquirer = require( "Inquirer");
const chalk = require( "chalk");
const data = require( "./ data.json");

//応答の色を追加します
const response = chalk.bold.blue;

const resumeOptions = {
  タイプ:「リスト」、
  名前:「resumeOptions」、
  メッセージ:「何を知りたいですか」、
  選択:[... object.keys(data)、 "exit"]
};

関数showresume(){
  console.log( "こんにちは、これは私の履歴書です");
  Handleresume();
}

function handleresume(){
  Inquirer.Prompt(resumeOptions).Then(Answer => {
    if(answer.resumeoptions == "exit")return;

    const options = data [`$ {answer.resumeoptions}`]
    if(options){
      console.log(response(new Inquirer.separator()));
      options.foreach(info => {
        console.log(response( "| =>" info));
      });
      console.log(response(new Inquirer.separator()));
    }

    Inquirer
      。プロンプト({
        タイプ:「リスト」、
        名前:「exitback」、
        メッセージ:「戻るか終了しますか?」
        選択:["back"、 "exit"]
      })。
        if(choice.exitback == "back"){
          Handleresume();
        } それ以外 {
          戻る;
        }
      });
  })。catch(err => console.log( 'oooops、'、err))
}

showresume();

Zoikes!それはコードの大きな塊です。何が起こっているのかを説明するために、少し引き裂きましょう。

ファイルの上部では、アプリを実行し、チョークライブラリを使用してカラースタイルを設定するために必要なすべてのものをインポートしています。色とカスタマイズについてもっと興味がある場合は、Chalkのドキュメントをチェックしてください。

 const Inquirer = require( "Inquirer");
const chalk = require( "chalk");
const data = require( "./ data.json");

//応答の色を追加します
const response = chalk.bold.blue;

コードが行っている次のことは、履歴書オプションのリストを作成することです。これらは、ターミナルでコマンドを入力した後に表示されるものです。私たちはそれをresumeoptionsと呼んでいるので、それが何をするかを正確に知っています。

 const resumeOptions = {
  タイプ:「リスト」、
  名前:「resumeOptions」、
  メッセージ:「何を知りたいですか」、
  選択:[... object.keys(data)、 "exit"]
};

データオブジェクトのキーを構成しながら、必要に応じてアプリを「終了」する方法を提供しながら、選択フィールドにほとんど関心があります。

その後、関数showresume()を作成します。これは、起動直後に実行される主な関数となります。歓迎のメッセージを表示し、Handleresume()関数を実行します。

関数showresume(){
  console.log( "こんにちは、これは私の履歴書です");
  Handleresume();
}

わかりました、今、大きなもののために:Handleresume()関数。最初の部分は、アプリを終了していないことを確認し、すべてが良い場合にデータオブジェクトから登録オプションを表示するための条件チェックです。つまり、選択したオプションが終了した場合、プログラムを終了します。それ以外の場合は、選択したキーの下で利用可能なオプションのリストを取得します。

そのため、アプリが終了していないことを確認したら、ness.resumeoptionsを取得します。私たちが定義したのは、教育、経験、連絡先でした。

それは私たちをInquirer.jsのものにもたらします。これらの作品をリストすると、最も簡単かもしれません。

Options Outputで新しいInquirer.separator()機能が機能することに気づきましたか?これは、コンテンツ間の視覚的なセパレーターを提供して、インターフェイスを少し読みやすくするために、コンテンツ間の視覚的なセパレーターを提供する機能です。

さて、オプションのリストを表示しています!次に、前の画面に戻る方法をAAにする必要があります。そうするために、別のInquirer.Promptを作成します。このオブジェクトを渡しますが、今回はExitとBackの2つのオプションしかありません。それは私たちが処理する必要がある答えで私たちに約束を返します。選択したオプションが戻ってくる場合、Handleresume()を実行します。つまり、メイン画面を再度開きます。 Exitを選択した場合、関数を終了します。

最後に、キャッチステートメントを追加して、可能なエラーをキャッチします。良い練習。 :)

NPMへの公開

おめでとう! Node index.jsを実行してみてください。アプリをテストできるはずです。

それは素晴らしいことですが、毎回直接働くことなく実行することをお勧めします。これは、私たちが見たばかりの関数よりもはるかに簡単です。

  1. お客様が持っていない場合は、npmjs.comでアカウントを登録してください。
  2. NPM Adduserを実行して、ユーザーをCLIに追加します。
  3. NPMアカウントの登録に使用したユーザー名とパスワードを提供します。
  4. package.jsonに移動し、次の行を追加します。
     「ビン」:{
      「Your-Package-Name」:「./index.js」
    }
  5. アプリのNPMページに表示されるreadme.mdファイルを追加します。
  6. パッケージを公開します。
 NPM Publish -Access = public

パッケージを更新するときはいつでも、それらをnpmにプッシュできます。 NPMバージョンの詳細については、こちらをご覧ください。

 NPMバージョンパッチ// 1.0.1
NPMバージョンマイナー// 1.1.0
NPMバージョンメジャー// 2.0.0

更新をNPMにプッシュするには:

 NPMパブリッシュ

魔法を再開!

それでおしまい!これで、npx your-package-nameをコマンドラインに入力し、すぐそこに履歴書を作成する魔法を体験できます。ちなみに、NPXは、マシンにローカルにインストールせずにコマンドを実行する方法です。 NPMをインストールしている場合、自動的に利用できます。

これは単純なターミナルアプリですが、舞台裏のロジックを理解することで驚くべきものを作成することができ、これがあなたの最初のステップです。

ソースコード

ハッピーコーディング!

以上がnpmに履歴書を作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
毎週のプラットフォームニュース:Galaxy Store、Tappable Stories、CSS SubgridのWebアプリ毎週のプラットフォームニュース:Galaxy Store、Tappable Stories、CSS SubgridのWebアプリApr 14, 2025 am 11:20 AM

今週のラウンドアップ:Firefoxは錠前屋のような力を獲得し、Samsung' s Galaxy StoreがプログレッシブWebアプリをサポートし始め、CSS SubgridはFirefoxで出荷しています

毎週のプラットフォームニュース:インターネットエクスプローラーモード、検索コンソールの速度レポート、通知プロンプトの制限毎週のプラットフォームニュース:インターネットエクスプローラーモード、検索コンソールの速度レポート、通知プロンプトの制限Apr 14, 2025 am 11:15 AM

今週のラウンドアップ:Internet ExplorerがEdgeに進み、Google Search Consoleが新しい速度レポートを宣伝し、FirefoxがFacebookの通知を提供します

CSSカスタムプロパティを使用したスコープのパワー(および楽しい)CSSカスタムプロパティを使用したスコープのパワー(および楽しい)Apr 14, 2025 am 11:11 AM

おそらく、CSS変数に少なくとも少し精通しているでしょう。そうでない場合は、ここに2秒の概要があります:それらは本当にカスタムプロパティと呼ばれます、あなたは設定します

私たちはプログラマーです私たちはプログラマーですApr 14, 2025 am 11:04 AM

建物のウェブサイトはプログラミングです。 HTMLとCSSの作成はプログラミングです。私はプログラマーです。ここでCSS-Tricksを読んでいる場合、あなたは'

サイトから未使用のCSSをどのように削除しますか?サイトから未使用のCSSをどのように削除しますか?Apr 14, 2025 am 10:59 AM

ここに'私が前もって知るのが好きなこと:これは難しい問題です。あなたがここに上陸した場合、あなたはあなたが伝えることができるツールを指し示すことを望んでいるので、あなたが'

ピクチャーインピクチャーWeb APIの紹介ピクチャーインピクチャーWeb APIの紹介Apr 14, 2025 am 10:57 AM

Picture-in-Pictureは、2016年にMacos SierraをリリースしたSafariブラウザでWebに初めて登場しました。ユーザーがポップできるようになりました。

ギャツビーを使用してぼやけた効果のために画像を整理して準備する方法ギャツビーを使用してぼやけた効果のために画像を整理して準備する方法Apr 14, 2025 am 10:56 AM

Gatsbyは、画像の処理と処理の素晴らしい仕事をしています。たとえば、手動で画像の最適化で時間を節約するのに役立ちます

ああ、パディングの割合は親要素の幅に基づいていますああ、パディングの割合は親要素の幅に基づいていますApr 14, 2025 am 10:55 AM

私は今日、私の頭の中で完全に間違っていたことをパーセンテージベース(%)のパディングについて学びました!パディングの割合はに基づいているといつも思っていました

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。