そうだなjsonの理解と学習


一、初歩的な理解

  • npmはpackageをインストールする.json時に直接現在のプロジェクトディレクトリの下に移動するコマンドnpm installまたはnpm install--save-devでインストールすれば、自動的にpackageがインストールされます.jsonのモジュールはnode-modulesフォルダの下
  • にインストールされます.
  • package.jsonに中国語注釈を追加するとコンパイルエラー
  • 各プロジェクトのルートディレクトリの下には、一般的にpackageがあります.jsonファイルは、このプロジェクトに必要なさまざまなモジュールと、プロジェクトの構成情報(名前、バージョン、ライセンスなどのメタデータなど)を定義します.npm installコマンドは、このプロファイルに基づいて、必要なモジュール、すなわちプロジェクトを構成するために必要な実行環境と開発環境を自動的にダウンロードします.`
  • package.jsonファイルは、手動で作成したり、npm initコマンドを使用して自動的に生成したりすることができます.
  • :npm init , , package.json 。 , (name) (version) , 。

    二、さらに理解する


    完全なフィールドと説明アドレス以下は、vueプロジェクトを作成するときにnpm initが自動的に生成するpackageである.jsonは詳細な理解をする

    1.次は最も簡単なpackageです。jsonファイル(2つのデータ、プロジェクト名、プロジェクトバージョンのみが必要で、なければinstallできません)

    {
     "name": "kocla_test",
    
     "version":"1.0.0",
    }

    2.scripts


    スクリプトコマンドを実行するnpmコマンドラインの略語を指定します.たとえば、startがnpm run startを実行するときに実行するコマンドを指定します.
    以下の設定では、npm run dev、npm run bulid、npm run unit、npm run test_、npm run lint_を選択してもアクセスできます.
    "scripts": {
        "dev": "node build/dev-server.js",
        "build": "node build/build.js",
        "unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run",
        "test": "npm run unit",
        "lint": "eslint --ext .js,.vue src test/unit/specs"
      },

    3.dependencies,devDependencies


    dependenciesとdevDependenciesの2つで、それぞれプロジェクトの実行に依存するモジュール、プロジェクト開発に必要なモジュールを指定します.これらは、モジュール名と対応するバージョンで構成されるオブジェクトを指します.依存するモジュールとそのバージョン範囲を示します.saveパラメータは、モジュールをdependenciesプロパティに書き込むことを示します.save-devは、モジュールをdevDependenciesプロパティに書き込むことを示します.
    "dependencies": {
        "vue": "^2.2.2",
        "vue-router": "^2.2.0"
      },
      "devDependencies": {
        "autoprefixer": "^6.7.2",
        "babel-core": "^6.22.1",
        "babel-eslint": "^7.1.1",
        "babel-loader": "^6.2.10",
        "babel-plugin-transform-runtime": "^6.22.0",
        "babel-preset-env": "^1.2.1",
        "babel-preset-stage-2": "^6.22.0",
        "babel-register": "^6.22.0",
        "chalk": "^1.1.3",
    }

    4.configフィールド


    configフィールドは、環境変数に値を出力するために使用されます.
    { 
      "name" : "foo", 
      "config" : { "port" : "8080" }, 
      "scripts" : { "start" : "node server.js" } 
    } 

    5.enginesフィールド


    このプロジェクトに必要なnodeを示す.jsバージョン
    "engines": {
       "node": ">= 4.0.0",
       "npm": ">= 3.0.0"
     },

    6.bin


    多くのパッケージには、システムパスにインストールする実行可能なファイルが1つ以上あります.npmでは簡単です(実際にはnpmはこのように動作します).
    これはあなたのpackageに必要です.jsonには、コマンド名とローカルファイル名のマッピングであるbinフィールドがあります.インストール時にグローバルインストールであれば、npmはシンボルリンクを使用してこれらのファイルをprefix/binにリンクし、ローカルインストールであれば./にリンクします.node_modules/.bin/.
    たとえば、myappをコマンドとして使用する場合は、次のようにします.
    { "bin" : { "myapp" : "./cli.js" } }

    そうするとmyappをインストールするとcliからnpmがjsファイルは、/usr/local/bin/myappへのシンボルリンクを作成します(これにより、コマンドラインでmyappを直接実行できます).