Paketmanager
Ein Befehl, ein Tab je Paketmanager, über Seiten hinweg gemerkt.
Ein Befehl, gezeigt für jeden Paketmanager, den die Website anbietet, wobei die Wahl des Lesers für die ganze Website gemerkt wird.
Verwendung
Schreibe den Befehl ohne den Manager — add -D pkg, run build,
dlx create-nuxt. Die eigene Schreibweise jedes Managers wird eingesetzt.
pnpm add -D @kirchdev/duxtVerben
| Geschrieben | pnpm | npm | yarn | bun |
|---|---|---|---|---|
add | add | install | add | add |
install | install | install | install | install |
remove | remove | uninstall | remove | remove |
run | run | run | run | run |
exec | exec | exec | exec | exec |
create | create | create | create | create |
dlx | pnpm dlx | npx | yarn dlx | bunx |
update | update | update | up | update |
outdated | outdated | outdated | — | outdated |
audit | audit | audit | npm audit | audit |
link | link | link | link | link |
why | why | why | why | why |
patch | patch | — | patch | patch |
yarn heißt Berry (≥ 2). Berry hat kein outdated und keine globale
Installation, npm kein patch in irgendeiner Schreibweise — ein Strich oben
bedeutet, dass dieser Manager für diesen Befehl keinen Tab bekommt, statt ein
Beinahe-Äquivalent zu zeigen, das etwas anderes tut. Der Build warnt, welche
Seite danach gefragt hat.
Ein -g oder --global irgendwo im Befehl ist eine globale Installation und
lässt den yarn-Tab aus demselben Grund entfallen.
i, rm, un, uninstall, up und upgrade werden akzeptiert und auf die
passende Zeile gefaltet. Ein Verb, das nicht in der Tabelle steht, wird für jeden
Manager wie geschrieben ausgegeben, und der Build sagt es — die Tabelle hängt
immer hinter dem neuesten Subcommand irgendeines Managers zurück, und ein
unbekanntes Wort abzulehnen wäre schlimmer, als es zu zeigen.
API
Props
| Prop | Typ | Standard | Anmerkungen |
|---|---|---|---|
command | string | Pflicht | Ohne den Manager — add -D pkg |
managers | DuxtPackageManager[] | duxt.packageManagers | Überschreibt die Liste der Website für einen Block |
Anmerkungen
Die Wahl ist ein Cookie, kein Browser-Speicher, und das mit Absicht: Der
Speicher wird erst nach der Hydration gelesen, der Block würde also einen
Manager rendern und dann vor den Augen des Lesers auf einen anderen umspringen.
Es ist First-Party, identifiziert niemanden und trägt einen Wert, den der Leser
gewählt hat — siehe
usePackageManager().
Ein Block darf weniger Manager auflisten, als die Wahl des Lesers abdeckt; er fällt dann auf seinen eigenen ersten Tab zurück, statt nichts zu zeigen.