[解決済み] [Solved] package.jsonのパラメータ'main'を使用するには?
2022-04-12 09:59:58
質問
すでにかなり検索しています。しかし、Nodeプロジェクトのpackage.jsonの「main」パラメータについては、まだ疑問が残っています。
- このフィールドを埋めることはどのように役立つのでしょうか?別の方法で尋ねると、このフィールドがある場合、別のスタイルでモジュールを開始することができますか?
- メインパラメータに複数のスクリプトを記入することは可能ですか?もしそうなら、それらは2つのスレッドとして起動されるのでしょうか?もしできない場合、1つのモジュールで2つのスクリプトを起動し、それらを並行して実行させるにはどうすればよいですか?
2つ目の質問はかなり奇妙なことだと分かっています。私はOpenShift上でNode.jsアプリケーションをホストしていますが、そのアプリケーションは2つの主要コンポーネントから構成されているからです。1つはREST APIで、もう1つは通知配信サービスです。
通知配信処理をシングルスレッドで実装した場合、REST APIがブロックされてしまうのではないかと心配です。しかし、それらは同じMongoDBカートリッジに接続する必要があります。さらに、可能であれば両方のコンポーネントを同じギアで提供できれば、ギアを1つ節約することができます。
どんな提案でも歓迎します。
解決方法は?
から npmのドキュメント :
メインフィールドは、モジュール ID であり、このフィールドは、あなたの プログラムです。つまり、パッケージの名前がfooで、ユーザがそれをインストールすると を実行し、require("foo")を実行すると、メインモジュールのexports オブジェクトが返されます。
これは、パッケージのルートからの相対的なモジュール ID である必要があります。 フォルダーに格納されます。
ほとんどのモジュールでは、メインスクリプトを持つことが最も理にかなっています。 それ以外はあまりないことが多い。
手短に言うと
-
が必要なだけです。
main
パラメータをpackage.json
と異なる場合、パッケージのエントリポイントはindex.js
をそのルート・フォルダに追加します。例えば、人々はしばしばエントリーポイントをlib/index.js
またはlib/<packagename>.js
この場合、対応するスクリプトは次のように記述しなければなりません。main
でpackage.json
. -
として2つのスクリプトを持つことはできません。
main
は、単にエントリーポイントであるrequire('yourpackagename')
を曖昧さなく定義する必要があります。
関連
-
[解決済み】Uncaught SyntaxError: JSONの位置0に予期しないトークンuがあります。
-
[解決済み】リクエストに失敗していないのに、「TypeError: failed to fetch」が表示される。
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] package.jsonのチルダ(~)とキャレット(^)の違いは何ですか?
-
[解決済み] package.jsonの各依存関係を最新バージョンに更新する方法は?
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み】HTTPのPOSTとPUTの違いは何ですか?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
親子コンポーネント通信を解決する3つのVueスロット
-
Vueがechartsのtooltipにクリックイベントを追加するケーススタディ
-
Vue Element-uiは、アイコンを追加するためのツリーコントロールノードを詳細に実装しています。
-
vue for 登録ページ効果 vue for sms 認証コードログイン
-
Javascript Bootstrapのグリッドシステム、ナビゲーションバー、ローテーションの説明
-
vueにおけるfilterの適用シーンについて解説します。
-
[解決済み】gulp anythingを実行するたびに、アサーションエラーが発生します。- タスク関数を指定する必要があります
-
[解決済み】ReactJSでエラー発生 Uncaught TypeError: Super expression は null か関数でなければならず、undefined ではありません。
-
フロントエンド null のプロパティ 'disabled' を読み取れない 問題が解決された
-
JavaScriptのgetElementById()メソッド入門