2012-09-18 5 views
9

Ich benutze Asp.Net MVC 4 und die integrierte Bündelung Unterstützung. In BundleConfig.cs habe ich das Standard-jquery zusätzlich in der RegisterBundles Methode:Asp.Net MVC Bundle nicht mit vorhandenen. Min.js

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-{version}.js")); 

Ich habe auch beide jquery-1.8.0.js und jquery-1.8.0.min.js in meinem Projekt enthält.

Alles funktioniert gut beim Debuggen, aber wenn ich debug="false" zum Testen der Bündelung festgelegt habe, scheint es, dass es die Standard-JQuery-Datei minimiert, anstatt die bereits vorhandene minimierte Version zu verwenden. Wenn ich die 'min' Version von jquery in meinem Projekt anschaue, enthält sie oben einen kleinen Kommentar und die erste Methodendefinition ist function(a,b). Wenn ich die Ausgabe in meinem Browser anschaue, fehlt der Kommentar und die erste Methodendefinition ist anders.

Hat jemand anderes dieses Problem gesehen? Wie kann ich den Bündelungsmechanismus dazu bringen, die vorhandene .min-Datei zu verwenden und nicht erneut zu minimieren?

+0

Diese Antwort web.config gesetzt durch kann Ihnen helfen, http://stackoverflow.com/a/12901050/230390 – Jaider

Antwort

0

Gibt es einen bestimmten Grund, warum die Datei nicht remediert werden soll? Es sollte sicher sein. Es gibt keine Möglichkeit, die teilweise Verkleinerung derzeit selektiv zu deaktivieren, im Grunde werden alle Dateien zuerst zusammengebündelt und dann wird das gesamte Paket minimiert.

Aber wenn debug = false, sollte es die jquery-1.8.0.min.js-Datei im Gegensatz zu der jquery-1.8.0.js-Datei verwenden.

+0

Zuerst versuchte ich zu Verstehen Sie, wie die Bündelung funktioniert, da die Dokumente sagen, dass die .min-Version verwendet wird und nicht so aussieht. Zweitens haben aktuelle Builds von Opera einen Bug, der die dynamisch verkleinerte Version erstickt. [see here] (http://ajaxmin.codeplex.com/workitem/17812) – AdmSteck

+1

Da Sie nur eine Datei bündeln und diese bereits verkleinert wurde, können Sie einfach ein einfaches Bundle anstelle eines ScriptBundle erstellen, das Ihre Datei niemals verkleinert Datei. –

2

Dateien mit min im Namen werden beim Hinzufügen von Dateien mit Platzhaltern ausgeschlossen, versuchen Sie, die Datei ohne das min im Namen umzubenennen.

7

Dies kann durch das Attribut usePreMinifiedFiles auf true in der

<core enableTracing="false" ...> 
    <js defaultMinifier="EdwardsJsMinifier" usePreMinifiedFiles="true"> 
+0

Vielen Dank! In meiner Version ist BundleTransformer.Configuration.xsd 'usePreMinifiedFiles = true' standardmäßig, aber ich brauche einen' false' Wert. – dizel3d

+0

Können Sie mir mit meiner Frage http://stackoverflow.com/questions/26925521/how-to-prevent-use-of-min-js-in-bundletransformer helfen – dizel3d