มีคำสั่งสั้น ๆ เพื่อย้ายโมดูลจาก devDependencies
ไปยังdependencies
ใน package.json หรือไม่
ฉันพบว่าตัวเองทำสิ่งนี้อยู่เสมอ:
npm uninstall <module_name> --save-dev
npm install <module_name> --save
มีวิธีที่สั้นกว่านี้หรือไม่?
มีคำสั่งสั้น ๆ เพื่อย้ายโมดูลจาก devDependencies
ไปยังdependencies
ใน package.json หรือไม่
ฉันพบว่าตัวเองทำสิ่งนี้อยู่เสมอ:
npm uninstall <module_name> --save-dev
npm install <module_name> --save
มีวิธีที่สั้นกว่านี้หรือไม่?
คำตอบ:
ใช่ เพื่อย้ายโมดูลจากdevDependencies
ไปที่dependencies
:
npm install <module_name> --save-prod
หากคุณต้องการทำสิ่งตรงกันข้าม (เช่นย้ายโมดูลจากdependencies
ไปยังdevDependencies
) เพียงทำ:
npm install <module_name> --save-dev
หรือจดชวเลข:
npm i <module_name> -D
ชวเลขเพื่อย้ายจากdevDependencies
ไปยังdependencies
(กระทุ้ง):
npm i <module_name> -P
npm i module-example -D
ยังจะทำงานเพื่อย้ายจากกระทุ้งไปยัง dev เช่นเดียวกับnpm i module-example -P
การย้ายจาก dev ไปยังการพึ่งพากระทุ้ง
yarn remove <module_name>
จากนั้นเพิ่มอีกครั้งใน devDependencies ด้วยyarn add <module_name> --dev
ในเส้นด้าย:
ย้ายโมดูลจากdevDependencies
ไปที่dependencies
:
yarn remove <module_name> --dev && yarn add <module_name>
ย้ายโมดูลจากdependencies
ไปที่devDependencies
:
yarn remove <module_name> && yarn add <module_name> --dev
ดังที่ได้กล่าวไว้ในความคิดเห็นคำสั่งจะลบโมดูลและติดตั้งใหม่ในตำแหน่งใหม่
dependencies
ไปยังdevDependencies
โดยไม่ต้องลบและเพิ่มใหม่?
&&
&
หากโครงการของคุณไม่มีไฟล์ lockfile หรือไฟล์ shrinkwrap คุณสามารถย้ายบรรทัดที่เกี่ยวข้องใน package.json
ยังคุณก็สามารถย้ายสายที่สอดคล้องกันในของคุณ
(ฉันไม่แนะนำไม่ใช้ lockfiles)
ปัญหาเกี่ยวกับการใช้npm
หรือyarn
คำสั่งคือมีโอกาสที่รุ่นที่ถูกเพิ่มเข้ามาใหม่จะเป็นรุ่นที่แตกต่างจากรุ่นที่ใช้อยู่ในปัจจุบัน หากนี่คือสิ่งที่คุณต้องการ - ทั้งการย้ายและการอัปเกรด - จากนั้นไปข้างหน้าและใช้คำตอบที่ยอมรับได้
หากไม่มีให้แก้ไขด้วยตนเองpackage.json
เพื่อย้ายบรรทัดจากdevDependencies
วัตถุไปยังdependencies
วัตถุ (สร้างหากจำเป็น) คุณสามารถไปในทิศทางอื่นได้เช่นกัน
ไฟล์ล็อคไม่ได้เก็บข้อมูลใด ๆ เกี่ยวกับว่าสิ่งใดเป็นสิ่งที่ต้องใช้ในการผลิตหรือการอ้างอิง dev ดังนั้นจึงไม่จำเป็นต้องอัพเดต คุณสามารถทำnpm
/ a yarn install
ภายหลังเพื่อแก้ไขค่าสถานะใด ๆ ในไฟล์ล็อค
dependencies
ส่วนระดับบนสุดเดียวในpackage-lock.json
แต่ละรายการอาจมีdev
ธงเพื่อระบุว่ามันคือการพึ่งพา dev หรือการพึ่งพาสกรรมกริยาของหนึ่ง ดูdocs.npmjs.com/files/package-lock.json#dev "ถ้า [dev เป็น] จริงการอ้างอิงนี้เป็นการพึ่งพาการพัฒนาอย่างใดอย่างหนึ่งของโมดูลระดับบนสุดหรือการพึ่งพาสกรรมกริยาของสิ่งนี้เป็นเท็จสำหรับการอ้างอิงที่ เป็นทั้งการพึ่งพาการพัฒนาของระดับสูงสุดและการพึ่งพาสกรรมกริยาของการพึ่งพาที่ไม่ใช่การพัฒนาของระดับบนสุด "
ปัญหาของการใช้การติดตั้ง npm คือคุณท้ายด้วยรุ่นที่ปรับปรุงแล้ว สิ่งที่ได้ผลสำหรับฉันคือ:
npm install
ที่ทำให้ทุกรุ่นยังคงเหมือนเดิม