Come fa
@Scripts.Render("~/bundles/jquery")
differire dal solo riferimento allo script da html in questo modo
<script src="~/bundles/jquery.js" type="text/javascript"></script>
Ci sono miglioramenti delle prestazioni?
Come fa
@Scripts.Render("~/bundles/jquery")
differire dal solo riferimento allo script da html in questo modo
<script src="~/bundles/jquery.js" type="text/javascript"></script>
Ci sono miglioramenti delle prestazioni?
Risposte:
Il raggruppamento consiste nel comprimere diversi file JavaScript o fogli di stile senza alcuna formattazione (nota anche come minimizzata) in un singolo file per salvare la banda e il numero di richieste per caricare una pagina.
Ad esempio puoi creare il tuo pacchetto:
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"))
E renderlo in questo modo:
@Scripts.Render("~/bundles/mybundle")
Un altro vantaggio di @Scripts.Render("~/bundles/mybundle")
oltre il nativo <script src="~/bundles/mybundle" />
è che @Scripts.Render()
rispetterà l' web.config
impostazione di debug:
<system.web>
<compilation debug="true|false" />
In debug="true"
tal caso , verrà invece eseguito il rendering di singoli tag di script per ogni script di origine, senza alcuna minificazione.
Per i fogli di stile dovrai usare StyleBundle e @ Styles.Render ().
Invece di caricare ogni script o stile con una singola richiesta (con tag script o link), tutti i file vengono compressi in un singolo file JavaScript o foglio di stile e caricati insieme.
Puoi anche usare:
@Scripts.RenderFormat("<script type=\"text/javascript\" src=\"{0}\"></script>", "~/bundles/mybundle")
Per specificare il formato dell'output in uno scenario in cui è necessario utilizzare Charset, Tipo, ecc.
async
attributo.
@Scripts.RenderFormat("<script type=\"text/javascript\" async src=\"{0}\"></script>", "~/bundles/mybundle")