2012-08-30 11 views
199

कैसेक्यों @ उपयोग Scripts.Render ("~/बंडलों/jQuery")

@Scripts.Render("~/bundles/jquery") 

सिर्फ इस

<script src="~/bundles/jquery.js" type="text/javascript"></script> 

वहाँ किसी भी प्रदर्शन में सुधार कर रहे हैं की तरह एचटीएमएल से स्क्रिप्ट को संदर्भित से भिन्न होता है?

+0

मैं कैसे प्रकार जोड़ कर उपयोग करने की आवश्यकता एक परिदृश्य में अपने उत्पादन का स्वरूप निर्दिष्ट करने के लिए "- http://stackoverflow.com/questions/15662096/how-do-i-add-type-text-css-to-a-script-tag-when-using-system-web-optimization – Lijo

उत्तर

262

बंडलिंग सब के बारे में बैंडविड्थ और अनुरोधों की संख्या बचत एक पृष्ठ लोड करने के लिए एक एकल फाइल में किसी फ़ॉरमेट (भी न्यूनतम किया गया के रूप में जाना जाता है) के बिना कई जावास्क्रिप्ट या स्टाइलशीट फ़ाइलों को संपीड़ित है।

उदाहरण के रूप में आप अपने खुद के बंडल बना सकते हैं:

bundles.Add(New ScriptBundle("~/bundles/mybundle").Include(
      "~/Resources/Core/Javascripts/jquery-1.7.1.min.js", 
      "~/Resources/Core/Javascripts/jquery-ui-1.8.16.min.js", 
      "~/Resources/Core/Javascripts/jquery.validate.min.js", 
      "~/Resources/Core/Javascripts/jquery.validate.unobtrusive.min.js", 
      "~/Resources/Core/Javascripts/jquery.unobtrusive-ajax.min.js", 
      "~/Resources/Core/Javascripts/jquery-ui-timepicker-addon.js")) 

और इस तरह यह प्रस्तुत करना:

@Scripts.Render("~/bundles/mybundle") 

स्टाइलशीट के लिए आप एक StyleBundle और @ Styles.Render() का उपयोग करना होगा।

प्रत्येक स्क्रिप्ट या स्टाइल को एक अनुरोध (स्क्रिप्ट या लिंक टैग के साथ) लोड करने के बजाय, सभी फ़ाइलों को एक ही जावास्क्रिप्ट या स्टाइलशीट फ़ाइल में संपीड़ित किया जाता है और एक साथ लोड किया जाता है।

+8

बस सोच: है उस बंडल के लिए कहीं भी संग्रहीत फाइल है या क्या यह स्मृति में मौजूद है? – Elliot

+15

यह कैश में संग्रहीत है। – NicoJuicy

+4

यह भी स्वचालित रूप से एक CDN का उपयोग करें और स्थानीय स्क्रिप्ट पर वापस आने अगर CDN उपलब्ध नहीं है करने के लिए सेट किया जा सकता है। यह बहुत चिकना है। –

45

तुम भी उपयोग कर सकते हैं:

@Scripts.RenderFormat("<script type=\"text/javascript\" src=\"{0}\"></script>", "~/bundles/mybundle") 

जहां = "text/सीएसएस वर्णसेट, प्रकार, आदि

+3

requjs मॉड्यूल – Phil

+12

... या 'async' विशेषता जोड़ने के लिए भी बहुत उपयोगी है। – ChrFin

+6

'@Scripts RenderFormat ("<स्क्रिप्ट टाइप = \" टेक्स्ट/जावास्क्रिप्ट \ "async src = \" {0} \ ">", "~/बंडल/mybundle") ' –

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