[解決済み] npmパッケージの "at"(@)プレフィックスの意味は何ですか?
2022-03-19 17:10:54
質問
で Angular Component Router ドキュメント 見たことのないnpmコマンドにつまずき、何が何だかわからなくなりました。
npm install @angular/router --save
の意味は何ですか?
@angular/router
?
この文字列全体がパッケージ名なのでしょうか?しかし、そのパッケージは npmjs.com . また、コマンドライン検索でもそのようなパッケージは返されません。
npm search @angular/router
:No match found for "@angular/router"
もそうですが
@angular/
は、npm の何らかのプレフィックス機構なのでしょうか?そしてそれはどのように機能するのでしょうか?
どのように解決するのですか?
これは「スコープ付きパッケージ」と呼ばれるNPMの新機能で、事実上、NPMパッケージが名前空間化されることを可能にします。NPM 上のすべてのユーザーと組織は自分自身のスコープを持ち、そこにパッケージを追加できるのは彼らだけです。
これは、いくつかの理由で便利です。
-
どのパッケージが「公式」で、どのパッケージがそうでないかを組織として明確にすることができます。
-
例えば、あるパッケージがスコープ
@angular
Angularのコアチームによって公開されたことがわかります。
-
例えば、あるパッケージがスコープ
-
パッケージ名は、レジストリ全体ではなく、公開されているスコープで一意であればよいのです。
-
例えば、パッケージ名
http
はすでにメインリポジトリで取得されていますが、Angularはこのリポジトリにある@angular/http
にも対応しています。
-
例えば、パッケージ名
という理由は スコープ付きパッケージは公開検索では表示されません。 というのも、これらの多くは NPM の有料サービスを利用している組織が作成したプライベートなパッケージで、公開すべきでないものを公開することはないと完全に確信できるまで、検索を開放することに抵抗があるからです - 法的観点から見ても、これはかなり理解できます。
詳しくは NPMドキュメント と Angularドキュメント .
EDITです。 と表示されます。 public scoped パッケージが検索で正しく表示されるようになりました!
関連
-
vueの補間表現とv-textディレクティブの違いについて
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] package.jsonのチルダ(~)とキャレット(^)の違いは何ですか?
-
[解決済み] とは何ですか! (not not)演算子とは何ですか?
-
[解決済み] npm installの-saveオプションは何ですか?
-
[解決済み] インストールされているnpmパッケージのバージョンを検索する
-
[解決済み] npm package.jsonファイルのdependencies, devDependencies, peerDependenciesの違いは何ですか?
-
[解決済み] Bowerとnpmの違いは何ですか?
-
[解決済み] npmはどこにパッケージをインストールするのですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
JavaScriptの関数この指摘の問題を説明
-
fetch ネットワークリクエストラッパーの説明例
-
元のイベントが実行されなかった後に要素を追加するためのjQueryソリューション
-
JavaScriptのクロージャの説明
-
vueのグローバルがscss(mixin)を導入。
-
vueディレクティブv-bindの使用と注意点
-
vueが定義するプライベートフィルタと基本的な使い方
-
[解決済み】「.addEventListener is not a function」なぜこのエラーが発生するのか?
-
JavaScriptのgetElementById、getElementsByTagNam、getElementsByClassNameの違いと使い方
-
[解決済み] Nodeモジュール名での@シンボルの使用 [重複].