Ultimo aggiornamento il 08 settembre 2020 12:57:02 (UTC/GMT +8 ore)

Ci sono momenti in cui si desidera creare un collegamento simbolico a un pacchetto, ci sono anche momenti in cui si desidera eseguire il logout del registro di sistema. È possibile utilizzare npm-link e npm-logout. per raggiungere questi rispettivamente. In questo tutorial esamineremo come funzionano queste due opzioni cli.

Npm-link

Questo comando viene utilizzato per creare un collegamento simbolico a una cartella del pacchetto.

Sinossi

npm link (in package dir)npm link <pkg>alias: npm ln

Descrizione

Ci sono due processi necessari per collegare simbolicamente un pacchetto.

Il primo processo consiste nell’eseguire npm link in una cartella del pacchetto per creare un collegamento simbolico nella cartella globale {prefix}/lib/node_modules/< package> che si collegherà al pacchetto in cui è stato eseguito il comando npm link. Collega anche qualsiasi contenitore nel pacchetto a {prefix}/bin / {name}.

La prossima cosa che devi fare è che in qualche altra posizione, dovresti eseguire npm link package-name. Questo creerà un collegamento simbolico dal nome del pacchetto installato globalmente a node_modules / della cartella corrente.

Va notato che il nome del pacchetto è preso dal pacchetto.json, e non dal nome della directory.

Il nome del pacchetto può opzionalmente essere preceduto da un ambito. L’ambito deve essere preceduto da un [email protected], seguito da una barra.

Quando si creano tarball per npm publish, i pacchetti collegati verranno snapshottati al loro stato corrente risolvendo i collegamenti simbolici.

Questo è molto utile per installare il proprio roba, in modo che si può comodamente lavorare su di esso e testarlo senza dover continuamente ricostruire.

Per esempio:

cd ~/projects/node-redis #will go into the package directorynpm link # will create global linkcd ~/projects/node-bloggy #will go into some other package directory.npm link redis # will link-install the package

Ora, tutte le modifiche a ~ / project / node-redis si rifletteranno in ~ / projects/node-bloggy/node_modules/node-redis/.

È anche possibile scorciatoia i due passaggi in uno. Ad esempio, se si desidera eseguire il caso d’uso precedente in un modo più breve, è possibile eseguire:

cd ~/projects/node-bloggy # will go into the dir of your main projectnpm link ../node-redis # will link the dir of your dependency

La seconda riga equivale a fare:

(cd ../node-redis; npm link)npm link redis

ciò significa che prima creerà un collegamento globale e quindi collegherà la destinazione di installazione globale nella cartella node_modules del progetto.

Va notato che, si fa riferimento al nome della directory, node-redis e non al nome del pacchetto redis.

È necessario includere l’ambito fornito con il pacchetto collegato se è ambito:

npm link @myorg/privatepackage

npm-logout

Questo comando consente di disconnettersi dal registro di sistema.

Sinossi

npm logout 

Descrizione

Ogni volta che si accede a un registro che supporta l’autenticazione basata su token, questo comando indica al server di terminare la sessione di questo token. Invaliderà il token ovunque lo si stia utilizzando, e non solo per l’ambiente corrente.

Quando si accede a un registro legacy che utilizza l’autenticazione nome utente e password, questo comando cancella le credenziali nella configurazione utente. In questo caso, influisce solo sull’ambiente corrente.

Se si fornisce-scope, questo comando troverà le credenziali per il registro di sistema connesso a tale scope, se è impostato.

Configurazione

Registro

Questo è l’URL di base del registro del pacchetto npm, se si specifica anche l’ambito, l’ambito avrà la precedenza.

Predefinito: https://registry.npmjs.org/

Ambito

Quando si specifica l’ambito, si è disconnessi dall’ambito specificato.

Predefinito: L’ambito è l’ambito del progetto corrente, se è specificato altrimenti non è nessuno.

npm logout 

Precedente: Comandi cli npm-install, npm-install-ci-test e npm-install-test
Successivo: Opzioni cli Npm-ls e npm

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.