Kaip įdiegti paketų.json priklausomybes dabartiniame kataloge naudojant npm

Turiu žiniatinklio programą: fooapp . Turiu package.json prie šaknies. Noriu įdiegti visas priklausomybes konkrečiame node_modules directory . Kaip tai padaryti?

Ką aš noriu

Tarkime, aš turiu dvi widget priklausomybes. Noriu baigti šią katalogo struktūrą:

 node_modules/ widgetA widgetB fooapp/ package.js lib .. 

Ką aš gaunu

kai paleidžiu npm install fooapp/ , gaunu:

 node_modules/ fooapp/ node_modules/ widgetA widgetB package.js lib/ .. fooapp/ package.js lib/ .. 

npm sukuria mano paraiškos katalogo kopiją node_modules kataloge ir įdiegia paketus kitame mazgo_modulių kataloge.

Suprantu, kad tikslinga įdiegti paketą. Bet man nereikia require() mano interneto programos viduje kažko kito, tiesiog jį paleisiu. Aš ieškau paprasto būdo įdiegti savo priklausomybes konkrečiame mazgo_modulių kataloge.

140
03 дек. Nustatykite Daniel Beardsley 03 Dec 2011-12-03 13:26 '11, 13:26 pm 2011-12-03 13:26
@ 2 atsakymai

Trukmė:

 npm install 

Iš jūsų taikomųjų programų katalogo (ty, kur yra paketas.json), įdiegsite priklausomybes savo programai, o ne įdiegsite jį kaip modulį, kaip aprašyta čia . / node_modules dėl paketo.json failo (tai iš tikrųjų yra šiek tiek sudėtingesnė nei tai, todėl patikrinkite npm dokumentus čia ).

Jei norite, node_modules katalogą galite perkelti į pagrindinį savo programos katalogą, nes mazgas „reikalauti“ mechanizmas supranta. Tačiau, jei norite atnaujinti programų priklausomybes naudodami diegimo / atnaujinimo funkciją, „npm“ nematys perkeltų „node_modules“ ir vėl sukurs naują katalogą dėl paketo.json.

Norėdami to išvengti, tiesiog sukurkite simbolinę nuorodą į perkeltus mazgų modulius iš jūsų „dir“ programos:

 ln -s ../node_modules node_modules 
269
04 дек. Atsakymą pateikė ireddick 04 Dec. 2011-12-04 12:59 '11, 12:59, 2011-12-04 12:59

Mano atveju, turiu daryti

 sudo npm install 

Mano projektas yra / var / www, todėl taip pat turiu nustatyti teisingus leidimus.

11
06 нояб. atsakymas, pateiktas lapkričio 6 d. 2013-11-06 03:23 '13, 3:23, 2013-11-06 03:23

Kiti klausimai apie „ etiketes arba Užduoti klausimą