TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए
बहु-पैकेज बिल्ड के लिए composite और references सेटिंग का उपयोग करें
TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए, CoddyKit पर TypeScript Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह TypeScript Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। TypeScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
परियोजना संदर्भ क्या हैं
परियोजना संदर्भ आपको TypeScript कोडबेस को कई TypeScript कॉन्फ़िगरेशन परियोजनाओं में बाँटने देते हैं, जो एक-दूसरे पर निर्भरताएँ घोषित करती हैं और क्रमिक, पृथक निर्माण सक्षम करती हैं।
// tsconfig.json (root)
{
"references": [
{ "path": "./packages/core" },
{ "path": "./packages/ui" }
]
}संयुक्त परियोजनाएँ
प्रत्येक संदर्भित परियोजना में अपने tsconfig में "composite": true होना चाहिए। इससे घोषणा-कैशिंग और निर्भरता-ट्रैकिंग सक्षम होती है।
// packages/core/tsconfig.json
{
"compilerOptions": {
"composite": true,
"declaration": true,
"outDir": "./dist"
}
}tsc --build के साथ निर्माण
निर्भरता क्रम में सभी संदर्भित परियोजनाओं का निर्माण करने के लिए मूल निर्देशिका से tsc --build (या tsc -b) चलाएँ।
# Build all projects
tsc --build
# Build and watch
tsc --build --watch
# Clean build outputs
tsc --build --cleanक्रमिक पुनर्निर्माण
पहले निर्माण के बाद, tsc --build केवल उन परियोजनाओं को फिर से संकलित करता है जिनकी स्रोत फ़ाइलों या निर्भरताओं में बदलाव हुआ है, जिससे बड़े रिपॉज़िटरी में गति बहुत बढ़ जाती है।
# Only changed packages are rebuilt
tsc --build
# Output: 2/5 projects up to date — skippingघोषणा फ़ाइलों का उपयोग
संदर्भित परियोजना अपनी निर्भरताओं का उपयोग dist/ में बनी .d.ts फ़ाइलों के माध्यम से करती है, स्रोत TypeScript फ़ाइलों को फिर से पार्स करके नहीं।
// packages/ui imports from packages/core
import { Button } from "@myapp/core"; // resolved via dist/index.d.tsपथ विन्यास
मूल tsconfig में paths निर्धारित करें या package.json में exports का उपयोग करें, ताकि विकास के दौरान TypeScript पैकेज आयातों का सही समाधान कर सके।
{
"compilerOptions": {
"paths": {
"@myapp/core": ["./packages/core/src/index.ts"]
}
}
}निर्माण क्रम बनाए रखना
TypeScript संदर्भ ग्राफ़ से निर्माण क्रम अपने-आप निर्धारित करता है। चक्रीय संदर्भों का पता लगाकर उन्हें त्रुटियों के रूप में बताया जाता है।
// Circular reference error example:
// packages/core references packages/ui
// packages/ui references packages/core
// Error: Circular project referenceoutDir और rootDir
प्रत्येक संयुक्त परियोजना में आउटपुट की संरचना नियंत्रित करने और पैकेज सीमाओं के पार फ़ाइलों के अनचाहे प्रसार को रोकने के लिए outDir और rootDir निर्धारित होने चाहिए।
{
"compilerOptions": {
"rootDir": "./src",
"outDir": "./dist"
}
}निर्माण उपकरणों के साथ एकीकरण
Turborepo, Nx और Lerna निर्भरता ग्राफ़ के आधार पर निर्माणों को कैश करने और समानांतर चलाने के लिए परियोजना संदर्भों के साथ एकीकृत होते हैं।
// turbo.json — declare TypeScript build as a pipeline step
{
"pipeline": {
"build": { "dependsOn": ["^build"], "outputs": ["dist/**"] }
}
}कई परियोजनाओं की निगरानी
tsc --build --watch सभी संदर्भित परियोजनाओं पर नज़र रखता है और हर बदलाव पर क्रमिक रूप से पुनः संकलित करता है, जिससे मोनोरेपो में लगभग तुरंत प्रतिक्रिया मिलती है।
# Terminal: tsc --build --watch
# [9:00:01 AM] Found 0 errors. Watching for file changes.पुनरावलोकन: परियोजना संदर्भ
परियोजना संदर्भ TypeScript को पृथक और कैश किए जा सकने वाले निर्माण-इकाइयों में बाँटते हैं। composite: true निर्धारित करें, references घोषित करें और मोनोरेपो में तेज़, सही क्रमिक निर्माण के लिए tsc --build का उपयोग करें।
त्वरित जाँच
किस TypeScript कॉन्फ़िगरेशन विकल्प की आवश्यकता होती है ताकि किसी परियोजना को दूसरी परियोजना संदर्भित कर सके?
आपने क्या सीखा
TypeScript परियोजना संदर्भ मोनोरेपो में तेज़ और पृथक निर्माण सक्षम करते हैं। composite: true निर्धारित करें, references के माध्यम से निर्भरताएँ घोषित करें और क्रमिक संकलन के लिए tsc --build से निर्माण करें।
एआई शिक्षक के साथ TypeScript सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 101
- पाठ
- 352
अक्सर पूछे जाने वाले प्रश्न
क्या “TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए” पाठ निःशुल्क है?
हाँ—“TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और TypeScript Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। TypeScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए” में मैं क्या सीखूँगा?
बहु-पैकेज बिल्ड के लिए composite और references सेटिंग का उपयोग करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ TypeScript Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या TypeScript Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर TypeScript Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस TypeScript Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर TypeScript Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- TypeScript प्रोजेक्ट रेफ़रेंस समझाए गए
- TypeScript के साथ pnpm वर्कस्पेस
- साझा प्रकार पैकेज की रणनीति
- मोनोरेपो में वृद्धिशील बिल्ड और कैश