2012-10-03 13 views
65

के साथ डिबगिंग टाइपस्क्रिप्ट कोड विजुअल स्टूडियो में टाइपस्क्रिप्ट स्रोत डीबग करने का कोई तरीका है (जेनरेट किए गए जावास्क्रिप्ट को डिबग करने के बजाय)?विजुअल स्टूडियो

टाइपप्रति भाषा विनिर्देशों से:

टाइपप्रति वैकल्पिक स्रोत-स्तरीय डिबगिंग को सक्षम करने, स्रोत नक्शे प्रदान करता है।

इसलिए मैं टीएस कोड में ब्रेकपॉइंट्स रखने में सक्षम होने की उम्मीद कर रहा था और इसे डीबग करने में सक्षम था, लेकिन यह काम नहीं करता है। मुझे चश्मा में डिबगिंग का कोई अन्य उल्लेख नहीं मिला। क्या यह काम करने के लिए मुझे कुछ करना चाहिए? शायद "वैकल्पिक रूप से" शब्द संकेत देता है कि मुझे इसके लिए कुछ करने की ज़रूरत है ... कोई सुझाव?

+0

तुम भी बाहर की जाँच कर सकते हैं [प्रलेखन] (http://stackoverflow.com/documentation/typescript/9131/) क्रोम कैनरी वास्तव में आवश्यक – Peopleware

उत्तर

61

वी.एस. 2017 के रूप में अद्यतन:

VS2017 अब, दृश्य स्टूडियो में सीधे टाइपप्रति डिबग करने के लिए काम करता है जैसे यदि आप ग # डिबगिंग। नीचे मेरा जवाब देखें। वी.एस. के पूर्व संस्करण के लिए

मूल उत्तर:

आप वी.एस. में डिबग करने के लिए सक्षम नहीं हो सकता है, लेकिन आप कुछ ब्राउज़रों में कर सकते हैं। हारून पॉवेल ने आज क्रोम कैनरी में काम कर रहे ब्रेकपॉइंट्स प्राप्त करने के बारे में ब्लॉग किया है: http://www.aaron-powell.com/web/typescript-source-maps

हारून कहता है कि संक्षेप में संक्षेप में संक्षेप में, आप -sourcemap*.js.map फ़ाइल को अपने स्रोत के समान निर्देशिका में बनाने के लिए कंपाइलर पर स्विच करें। source maps (क्रोम कैनरी, और संभावित रूप से हाल ही में फ़ायरफ़ॉक्स बनाता है, क्योंकि वे एक मोज़िला विचार हैं) का समर्थन करते हैं, तो आप अपने .ts स्रोत को डीबग कर सकते हैं जैसे कि आप .js फ़ाइलों को सामान्य करते हैं।

ब्लॉग "आशा है कि विजुअल स्टूडियो या आईई (या दोनों) टीम भी सोर्स मैप्स उठाती है और उनके लिए भी समर्थन जोड़ती है।" - जो बताता है कि यह अभी तक नहीं हुआ है।

अद्यतन:

http://blogs.msdn.com/b/typescript/archive/2012/11/15/announcing-typescript-0-8-1.aspx

घोषणा से::

टाइपप्रति 0.8.1 की रिलीज के साथ

, स्रोत मानचित्र डिबगिंग अब दृश्य स्टूडियो में भी उपलब्ध है

टाइपस्क्रिप्ट अब स्रोत स्तर डीबगिंग का समर्थन करता है! स्रोत मानचित्र प्रारूप भाषाओं को डीबग करने के तरीके के रूप में लोकप्रियता प्राप्त कर रहा है जो जावास्क्रिप्ट में अनुवाद करता है और विभिन्न ब्राउज़रों और उपकरण द्वारा समर्थित है। संस्करण 0.8.1 के साथ, टाइपस्क्रिप्ट कंपाइलर आधिकारिक तौर पर स्रोत मानचित्र का समर्थन करता है। इसके अतिरिक्त, के लिए टाइपस्क्रिप्ट का नया संस्करण विजुअल स्टूडियो 2012 स्रोत मानचित्र प्रारूप का उपयोग करके डीबगिंग का समर्थन करता है। कमांड लाइन से, अब हम पूरी तरह से --sourcemap ध्वज के उपयोग का समर्थन करते हैं, जो जावास्क्रिप्ट आउटपुट से संबंधित स्रोत मानचित्र फ़ाइल आउटपुट करता है। यह फ़ाइल स्रोत मानचित्र-सक्षम ब्राउज़र और दृश्य स्टूडियो में मूल टाइपस्क्रिप्ट स्रोत को सीधे डिबग करने की अनुमति देगी। विजुअल स्टूडियो में डिबगिंग सक्षम करने के लिए टाइपस्क्रिप्ट प्रोजेक्ट के साथ एक HTML अनुप्रयोग बनाने के बाद ड्रॉपडाउन से 'डीबग' का चयन करें।

अद्यतन:

WebStorm भी SourceMaps के माध्यम से डीबगिंग के लिए समर्थन जोड़ा गया है: http://blog.jetbrains.com/webide/2013/03/webstorm-6-0-released-adds-typescript-debugging-with-source-maps-fresh-ui-and-much-more/

पहले, WebStorm ऐसे टाइपप्रति के रूप में आधुनिक भाषाओं के साथ चालाक और अधिक सुव्यवस्थित वेब विकास के लिए अनुमति देता है, कॉफीस्क्रिप्ट और डार्ट। इन उच्च स्तरीय भाषाओं सभी समर्थित प्लेटफार्मों पर ब्राउज़र द्वारा पहचाना उन में की

स्वत: संकलन/transpilation: इन भाषाओं, WebStorm 6 प्रस्तावों के लिए एक प्रथम श्रेणी कोड संपादक प्रदान करने के अलावा। स्रोत मानचित्र के साथ टाइपस्क्रिप्ट, डार्ट या कॉफीस्क्रिप्ट का पूर्ण-विशेषीकृत डिबगिंग।

+3

है? मैं क्रोम स्थिर पर हूं, और मुझे लगता है कि "स्रोत स्रोत सक्षम करें" डेवलपर टूल सेटिंग विंडो में एक विकल्प है। –

+1

मुझे लगता है कि जब हारून ने ब्लॉग लिखा था (और जब मैंने यह जवाब पोस्ट किया था), कैनरी आवश्यक था। अब तक, सुविधा रिलीज के माध्यम से percolated होना चाहिए। – JcFx

+4

अब, इंटरनेट एक्सप्लोरर का उपयोग करते समय सीधे विजुअल स्टूडियो जीयूआई में टाइपस्क्रिप्ट को डीबग करना संभव लगता है। मुझे आश्चर्य है कि यह अन्य ब्राउज़रों के साथ भी हासिल किया जा सकता है। – kossmoboleat

14

वीएस2013 टाइपस्क्रिप्ट एप्लिकेशन के साथ, मुझे web.config में कुछ भी बदलने की ज़रूरत नहीं थी। मैंने टीएस फ़ाइल में ब्रेकपॉइंट लगाया और आईई में डीबग किया, और पस्टो, ब्रेकपॉइंट टाइपस्क्रिप्ट के अंदर रुक गया।

+0

मैं सहमत हूं। मैं वीएस 2013 अपडेट 2 का उपयोग कर रहा हूं। – Nash

+1

डिफ़ॉल्ट रूप से मेरे लिए काम नहीं करता – Marko

+2

आईई पर इंगित करने के लिए धन्यवाद। दुर्भाग्यवश क्रोम में डीबगिंग काम नहीं कर रहा है। –

2

टाइपस्क्रिप्ट डीबगिंग मेरे लिए किसी भी मशीन पर वीएस2013 अपडेट 3 के साथ बिल्कुल काम नहीं करता है। बहुत निराशा के बाद, मैंने वीएस2013 अपडेट 4 सीटीपी को अपडेट करने का प्रयास करने का फैसला किया। आखिरकार वीएस में ब्रेकपॉइंट्स मारा जा रहा है!

+0

thx 4 सीटीपी सिर ऊपर, स्थापित करने के लिए। मेरी मशीन में अद्यतन 3 और टाइपस्क्रिप्ट डिबगिंग कार्य हैं। हालांकि, शुरूआत में विशेष रूप से एक लंबा समय लगता है क्योंकि जब भी वेब एप्लिकेशन संकलित होता है (हालांकि मैंने केवल टीएस कोड बदल दिया है) – citykid

3

विजुअल स्टूडियो के साथ डिबगिंग टाइपस्क्रिप्ट सही सेटिंग्स के साथ काम करता है। (वी.एस. के पिछले संस्करणों में मैं कभी कभी समस्याओं का सामना, नीचे कैसे यह वी.एस. 2015 CTP 6 के साथ ठीक काम करता है है)

  1. सबसे पहले आप यह सुनिश्चित करें कि आप स्रोत बनाने बनाने नक्शे जब जावास्क्रिप्ट को टाइपप्रति संकलन। तो आपके पास प्रत्येक xxx.js. के पास xxx.js.map फ़ाइल होनी चाहिए टाइपप्रति संकलक दृश्य स्टूडियो के बाहर चल रहा है किसी भी कठिनाई का कारण नहीं है, टीएससी आदेश पंक्ति पर से

    हो रही स्रोत नक्शे जोड़ने

    --sourcemap %1.ts 
    

    अपने घूंट स्क्रिप्ट आमतौर पर डिफ़ॉल्ट रूप से sourcemaps पैदा करेगा।

  2. विजुअल स्टूडियो में अपने वेब एप्लिकेशन को कॉन्फ़िगर करें।

    सेट इंटरनेट एक्सप्लोरर प्रारंभ ब्राउज़र के रूप में सेट करें। मुझे यह केवल आईई के साथ काम कर रहा है और नहीं लगता कि कोई अन्य ब्राउज़र काम करेगा।

    प्रोजेक्ट गुणों में "वेब" टैब पर जाएं और नीचे "डिबगर्स" अनुभाग को कॉन्फ़िगर करें: सभी डिबगर्स को अक्षम करें! यह काउंटर अंतर्ज्ञानी है और आपको यह त्रुटि संदेश दिखाई दे सकता है:

    आपने डीबगर शुरू करने का प्रयास किया है, लेकिन वेब प्रॉपर्टी पेज पर आपकी वर्तमान डीबग सेटिंग्स के आधार पर डीबग करने की कोई प्रक्रिया नहीं है। ऐसा तब होता है जब "कोई पृष्ठ न खोलें। किसी अन्य प्रक्रिया से अनुरोध की प्रतीक्षा करें" विकल्प चुना गया है, और ASP.NET डिबगिंग अक्षम है। कृपया वेब प्रॉपर्टी पेज पर अपनी सेटिंग्स जांचें और पुनः प्रयास करें।

    त्रुटि संदेश कहता है, वेब गुणों के शीर्ष पर स्टार्ट एक्शन एक और विकल्प होना चाहिए, जैसे "वर्तमान पृष्ठ"।

    सेट ब्रेकपॉइंट्स विजुअल स्टूडियो के अंदर या बाद में आपके टीएस कोड में।

    हिट F5

आप डिबग और ts संपादित फ़ाइलें, करने के लिए दृश्य स्टूडियो संपादक का उपयोग "संपादित करें और आगे बढ़ें" काम नहीं करेगा कर सकते हैं, वहाँ वर्तमान में कोई ब्राउज़र है कि जे एस और जे एस पुनः लोड कर सकते है .map फ़ाइलें और जारी रखें। (मुझे किसी को भी सही अगर मैं गलत हूँ और मैं खुश हो जाएगा।)

+0

अप्रैल से आपके सेटअप में कोई भी बदलाव? – jth41

+0

क्या आपको लेखन उपयोगी लगता है? – citykid

3

यह अब वी.एस. 2017 में तय हो गई है तो आप दृश्य स्टूडियो और टाइपप्रति में सीधे डीबग कर सकते हैं।

बस अपने * .ts फ़ाइल में अपने ब्रेकपाइंट सेट, और यह हिट हो जाएगा।

और यह, वी.एस., नहीं IE में डिबग के रूप में यदि आप ग # डिबगिंग गया होगा।

0

संक्षिप्त उत्तर: दृश्य स्टूडियो

पृष्ठभूमि पुन: प्रारंभ करें: मैं टाइपप्रति साथ दो अलग अलग परियोजनाओं के साथ 2 दृश्य स्टूडियो 2015 उदाहरणों था। पहला प्रारंभिक उदाहरण सही ढंग से डीबग नहीं किया गया था, दूसरे ने किया था। सभी परियोजना सेटिंग्स समान थीं। मैंने अंततः पहले उदाहरण को पुनरारंभ किया और फिर इसे टाइपस्क्रिप्ट (अंत में) डीबग किया।

संबंधित मुद्दे