32

HTML5 verfügt über ein asynchrones Attribut für Skriptdateien, um asynchronen Ladevorgang zu ermöglichen.Asynchrones Laden von JavaScript-Dateien mit MVC4 Bundling und HTML5 async-Attribut

Ich kann dies mit meiner MVC4-Bündelung nutzen, indem ich das Bündel so referenziere.

<script type="text/javascript" src='@Scripts.Url("~/bundles/jquery")' async></script> 

Aber was das bedeutet ist, dass meine Skripte auch im Debug-Modus gebündelt sind.

Also wie kann ich Vorteile der Bündelung und der Async-Attribut nutzen, ohne die Nicht-Minification im Debug zu verlieren.

Antwort

55

Wenn Sie die 1.1-alpha1-Version aktualisieren, können Sie einfach das async-Attribut in das Tag-Format hinzufügen, entweder über:

Scripts.DefaultTagFormat = @"<script src=""{0}"" async></script>" 

oder es vorbei, wo Sie den Asynchron-Tag folgendes wollen

Verwenden statt Scripts.Render ("~/Bündel/jquery")

Scripts.RenderFormat(@"<script src=""{0}"" async></script>", "~/bundles/jquery") 
+0

System.Web.Optimization 4.0 scheint sowohl DefaultTagFormat und RenderFormat entfernt zu haben, benutzerdefinierte Skript-Tag Ausgabe disallowing (mit Asse tManager.RenderScriptTag direkt). – Enull

+1

@ E-Null Die aktuelle Version unterstützt jetzt beide oben genannten Methoden, wenn Sie nur 'PM> Install-Package Microsoft.AspNet.Web.Optimization' –

+3

Wo muss ich diese Zeilen schreiben (einer von ihnen ..) Und was Upgrade auf 1.1-Alpha? die MVC-Version oder die Weboptimierung? Danke ... – Ron

Verwandte Themen