2015-04-20 8 views
26

devtool configuration docs में वे कहते हैं:वेबपैक में "प्रगमा शैली" का अर्थ क्या है?

लगाकर @ # या # @ एक pragma शैली को लागू करेगा। (#, के लिए डिफ़ॉल्ट)

इसका क्या अर्थ है?

+0

यह एक सी प्रीप्रोसेसर को संदर्भित करता है। यह सिर्फ कंपाइलर को और अधिक सुराग प्रदान करता है कि उसे क्या करना चाहिए। – erip

+0

हाय एरिप, क्या आप मुझे इसके बारे में कुछ जानकारी दे सकते हैं? को Google पर कुछ भी नहीं मिला .. –

उत्तर

17

विभिन्न ब्राउज़रों को स्रोतमैप निर्दिष्ट करने के लिए विभिन्न प्रारूपों की आवश्यकता होती है। यदि आपका ब्राउज़र वेबपैक फ़ाइलों के लिए स्रोतमैप नहीं दिखा रहा है, तो आप इसे अपने ब्राउज़र के साथ संगत बनाने के लिए उस विकल्प को बदल सकते हैं।

+0

आपके त्वरित उत्तर, sirlancelot के लिए धन्यवाद। मैंने "Sourcemaps pragma शैली" googled और इसके बारे में कुछ भी नहीं मिला। क्या आप मुझे इसके बारे में कुछ जानकारी दे सकते हैं? –

+2

एकमात्र जानकारी जो मैं वास्तव में इसके बारे में पा सकता हूं वह यहां है: http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-howwork – matpie

18

इसके बारे में थोड़ा और स्पष्ट होने के लिए, "प्रज्ञा" को संदर्भित किया जा रहा है वर्णों का एक अनुक्रम है जो ब्राउज़र में मेटाडेटा को इंगित करता है। इस मामले में, मेटाडेटा ब्राउज़र को बताता है कि स्रोत मानचित्र फ़ाइल लाने के लिए, क्या इसे लोड करने का निर्णय लेना चाहिए (उदा।, जब उपयोगकर्ता ब्राउज़र देव उपकरण खोलता है)। , Webpack के हाल के संस्करणों में

यदि आप कार्य करें:

sirlancelot से लिंक में संकेत के रूप में, pragma के लिए मानक प्रारूप //# के साथ शुरू निम्न रूप में एक टिप्पणी का उपयोग करने, है अपने devtool सेटिंग में एक प्रगामा वर्ण निर्दिष्ट न करें, फिर यह उपरोक्त दिखाए गए टिप्पणी वर्णों के बाद # वर्ण का उपयोग करने के लिए डिफ़ॉल्ट है।

//@ sourceMappingURL=/path/to/file.js.map

हाल ही में एक ब्राउज़र में //@ प्रपत्र का उपयोग में परिणाम होगा:

Webpack के पुराने संस्करणों में हालांकि, pragma चरित्र @ डिफ़ॉल्ट है, जो फार्म की एक टिप्पणी में परिणाम होगा इस्तेमाल किया अब ब्राउज़र कंसोल में एक बहिष्करण चेतावनी (कम से कम क्रोम में)।

आप किसी पुराने ब्राउज़र का समर्थन करने की जरूरत है, तो आप डिफ़ॉल्ट pragma वांछित चरित्र के साथ अपने devtool सेटिंग लगाकर से, उदाहरण के लिए ओवरराइड कर सकते हैं:

devtool: "@source-map"

या # को स्पष्ट रूप से यह सेट के साथ:

devtool: "#source-map"

लेकिन यह सिर्फ उपसर्ग चरित्र छोड़ देते हैं और Webpack विशिष्ट द्वारा चूक जोड़ने के लिए IMO साफ है इसे यिंग के रूप में:

devtool: "source-map"

+0

धन्यवाद, यह एक और अधिक उपयोगी उत्तर है। – Elad

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