NPMにパッケージを発行する


ウェブ開発者の仕事を面白いものにすることの一つは、ランダムな人がちょうどGoogleで単語をタイプすることができるという事実です、そして、あなたのウェブサイトはポップアップします.しかし、それはよくなる、誰かが自分のコードであなたの仕事を使用することができます.
私は最近、他の人々のためにNPMのパッケージを公開する方法を学びました、そして、私はあなたがどのようにすることができるかについて説明したいです.しかし、最初に、私はノードのパッケージとモジュールについて話します.

パッケージ
からnode JS ドキュメント、パッケージはパッケージによって記述されるファイルまたはディレクトリです.JSONファイル.基本的に、パッケージはあなたが書いて、パッケージを持っているコードの一部です.それを記述するJSONファイル.したがって、以下のこのファイルはなぜパッケージですか?それはパッケージがあるという事実のため.JSONファイル
//index.js file
function checkNumber(val){
if(val%2===0){
return "is Even"
}else{
return "is Odd"
}
}

//package.json file
{
  "name": "check_number",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Fako",
  "license": "MIT"
}
パッケージの上のコードからわかるように.JSONファイルは単にこの場合、別のファイルを記述するファイルです.jsファイル.パッケージを作成できます.あなたの端末でNPM INITをタイプして、質問に答えてJSONファイル.あなたが好きではない任意の答えは簡単にその質問の横に右に入力して置き換えることができます.

モジュール
ノードJS docsからも、モジュールはノードによってロードされることができるNodeThuモジュールディレクトリのどんなファイルまたはディレクトリでもあります.js require ()関数.
しかし、ノードがロードされる.js require ()関数は、以下のいずれかです
  • パッケージ付きフォルダ.メインフィールドを含むJSONファイル.
  • インデックス付きのフォルダ.それの中のjsファイル.
  • JavaScriptファイル.
    モジュールがパッケージを必要としないことに注意してください.JSONファイル.すべてのモジュールがパッケージであるというわけではありません( package . jsonファイルだけです).
  • パッケージを作成しましょう.

    説明
    これは数字の配列を取り、それらの数値の平均を返すパッケージです.おかしい右に聞こえるが、それはパッケージです.単にあなたの再利用可能なコードは、誰もが利用できるようにします.
    注意:システムにインストールされているノードJSとNPMを必要とします.
    新しいフォルダを作成して起動すると、そのファイルのインデックスを作成します.jsこれは具体的には
  • これが慣例だ
  • これは、あなたのシステムがどこでこのフォルダ/パッケージを使用しようとするときに見られる最初の場所です.パッケージで説明したことを思い出してください.上記ファイル
  • "main": "index.js"
    
    あなたはこれを変えることができますが、私はそれに強く忠告します.
    あなたのインデックスで.これは、必要なコードです
    let sum = 0,
      avg;
    module.exports = function avgNumber(arr) {
      for (let i = 0; i < arr.length; i++) {
        sum += arr[i];
      }
      avg = sum / arr.length;
      return avg;
    };
    
    ここでは、単に数の配列を取り、平均を返す関数をエクスポートします.
    このAvgNumberフォルダーの外側に、新しいファイルを作成します.js私はパッケージを保存したいのでフォルダの外にファイルを作成しています.ちょうど私のパッケージと他の何もない.
    現在メインで.js
    const avg = require("./avg_number");
    console.log(avg([1, 2, 3, 4, 5]));
    
    それはまだ公式の“NPMパッケージ”ではないので、私はフォルダを必要とするようにそれを必要とする必要があります.私が行かない方法に注意してください./avg_number/index.js , これは、デフォルトでJSがAVGHIRL数フォルダ内のインデックスファイルを探すのを既に知っているからです.
    そして、ここから、あなたの端末とタイプを開きます
    node main.js
    
    閉じるこの動画はお気に入りから削除されています.私は::)
    それで、現在、あなたがものすごい開発者であるのを見るために、全世界のためにパッケージを発表させてください.
  • アカウントを作成するnpmjs.org
  • ルートディレクトリの端末でnpm login を参照してください
  • あなたの端末から、AVGNumbercd avgNumber .
  • パッケージを作成します.あなたの端末からのJSONファイルnpm init . 注意してください、世界中の他のすべての製品と同様に、あなたの製品の名前は特別でなければならない、これは違いはありません.パッケージに書かれている名前.JSONファイルは、他の人があなたのパッケージをインストールするために使用するものですので、キャッチーでファインネームを探す必要があります.私はシスコ(Flashから)のような名前ウィザードではないので、私はちょうどパッケージと私の名前をタグ付けします.それは素晴らしいリングを追加します.
  • package name: (package) fako_average
    
    デフォルトでは、パッケージ名はルートディレクトリの名前です.
    Enterキーを押して他のオプションを参照してください.
  • 今すぐ実行
  • npm publish
    
    あなたのパッケージは、世界中どこからでもダウンロード可能です.
    NPM Publishを実行すると、実行しているディレクトリからすべてのファイルまたはフォルダが抽出されます.それで、あなたが利用できるようにするフォルダの中でNPM出版を走らせるようにしてください.
    さて、インストールしてみましょうnpm i fako_average , そして、すぐにあなたのパッケージを含むべきであるノードモジュールを得ます、そして、現在、あなたはmain.js ファイルを削除し、.また、あなたのパッケージに書かれている名前を変更する必要があることに注意してください.JSONファイル依存関係を再度実行します.
    このセッションを終了する前に、Expressなどのパッケージをダウンロードするときには、他のフォルダをたくさんのモジュールで取得することになります.これはExpress自体が他のフォルダ/モジュールに依存しているため、Expressをインストールしてもインストールされます.しかし、パッケージをチェックするときに注意してください.依存関係部分のJSONは、他のモジュールが単なるモジュールであることを明示的に表示します.
    お読みありがとうございます.あなたはTwitterで私に従うことができます@fakoredeDami .