Avatar ·

كيفية وضع حزم @types/* بشكل صحيح: في dependencies أم devDependencies؟

مرحبًا أيها الزملاء! أنا مبتدئ في TypeScript وأحاول فهم البنية الصحيحة لملف package.json. لدي مشروع React + TypeScript. أقوم بتثبيت أنواع لمكتبات مختلفة، مثل lodash وexpress وreact. لا أفهم أين يجب وضعها: في `dependencies` أم `devDependencies`؟ إليك مثال على ملف package.json الخاص بي: ```json { "name": "my-app", "version": "1.0.0", "dependencies": { "react": "^18.2.0", "react-dom": "^18.2.0", "lodash": "^4.17.21", "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0", "@types/lodash": "^4.14.182" }, "devDependencies": { "typescript": "^5.0.0", "webpack": "^5.75.0" } } ``` أرى أن الكثيرين على الإنترنت يضعون @types/* في devDependencies، لكنني لست متأكدًا لماذا هذا صحيح. ففي النهاية، إذا كنت أستخدم lodash مع الأنواع في الكود، أليست الأنواع ضرورية لعملية البناء؟ أم أن الأمر ليس كذلك؟ مشروعي يُبنى باستخدام Webpack، وأقوم بتشغيل `npm install` على خادم الإنتاج. أخشى أن...