PrimeNg と呼ばれる Angular2 用の非常に優れたウィジェット ライブラリを使用しています。
PrimeNg に必要な機能がいくつか欠けているとします。そのため、リポジトリをフォークし、 プル リクエストを送信して変更内容をメイン リポジトリに取得します。プル リクエストが受け入れられるのを待っている間、リポジトリのフォークを package.json に含めたいと思います。
これからpackage.jsonを更新してみました:
"dependencies": {
...
"primeng": "1.0.0-beta.13",
...
}
これに:
"dependencies": {
...
"primeng": "JakeSummers/primeng.git#d35f5635a216005018bed89d249816e0f65f68f6",
...
}
残念ながら、これは機能しません。
node_modules ディレクトリを見ると、基本的に空であることがわかります。
[Aug-30 18:04][node_modules]$ tree primeng/
primeng/
├── LICENSE.md
├── package.json
└── README.md
0 directories, 3 files
package.json を変更する前は、ディレクトリには次のものが含まれていました。
primeng/
├── components
│ ├── accordion
│ │ ├── accordion.d.ts
│ │ ├── accordion.js
│ │ └── accordion.js.map
│ ├── autocomplete
│ │ ├── autocomplete.d.ts
│ │ ├── autocomplete.js
│ │ └── autocomplete.js.map
│ ├── breadcrumb
│ │ ├── breadcrumb.d.ts
│ │ ├── breadcrumb.js
│ │ └── breadcrumb.js.map
│ ├── button
│ │ ├── button.d.ts
│ │ ├── button.js
│ │ └── button.js.map
│ ├── calendar
│ │ ├── calendar.d.ts
...
├── LICENSE.md
├── package.json
├── primeng.d.ts
├── primeng.js
├── primeng.js.map
├── prod
│ ├── application.js
│ ├── polyfills.js
│ └── vendor.js
└── README.md
62 directories, 195 files
package.json docsをさらに見てみると、多分私はやっていないようです
CoffeeScript やその他の言語を JavaScript にコンパイルするなど、プラットフォーム固有ではないビルド手順については、prepublish スクリプトを使用してこれを行い、必要なパッケージを devDependency にします。
例えば:
{ "name": "ethopia-waza",
"description": "a delightfully fruity coffee varietal",
"version": "1.2.3",
"devDependencies": {
"coffee-script": "~1.6.3"
},
"scripts": {
"prepublish": "coffee -o lib/ -c src/waza.coffee"
},
"main": "lib/waza.js"
}
prepublish スクリプトは公開前に実行されるため、ユーザーは自分でコンパイルしなくても機能を使用できます。開発モード (つまり、ローカルで npm install を実行) では、このスクリプトも実行されるため、簡単にテストできます。
primeNg プロジェクトの package.json には prepublish スクリプトがありません。追加する必要があるかどうかを検討しています。必要な場合はどうすればよいですか? そのスクリプトはいつ実行されますか? git リポジトリからのプルで実行されますか?
ポインタや例をいただければ幸いです。ありがとう!