Heim > Artikel > Web-Frontend > Warum schließt Bundler .min-Dateien aus?
Bundler übersieht .min-Dateien
Im Zusammenhang mit der ASP.NET MVC4-Bündelung tritt ein merkwürdiges Problem auf, bei dem der Bundler Dateien mit dem ausschließt .min.js-Erweiterung aus ihrer Kompilierung. Um dies zu veranschaulichen, betrachten Sie die folgende BundleConfig-Klasse:
<code class="c#">public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/Scripts/jquery") .Include("~/Scripts/jquery-1.8.0.js") .Include("~/Scripts/jquery.tmpl.min.js")); }</code>
In der Ansicht wird der folgende Code zum Rendern des Bundles verwendet:
<code class="html"><head> @Scripts.Render("~/Scripts/jquery") </head> <body>test</body></code>
Die gerenderte Ausgabe enthält jedoch nur die jquery-1.8.0.js-Datei und jquery.tmpl.min.js wird weggelassen.
Ursache
Dieses Verhalten ist nicht auf die Bundler-Konfiguration selbst zurückzuführen. Es hängt mit einem Problem in der Microsoft.AspNet.Web.Optimization-Paketversion 1.1.0 zusammen.
Lösung
Während die ursprünglich bereitgestellte Lösung eine Änderung der IgnoreList-Konfiguration beinhaltete , dies gilt in späteren Versionen des Optimierungspakets nicht mehr. Die neuesten Versionen (1.1.3 und höher) haben dieses Problem behoben.
Um dieses Problem zu beheben und .min.js-Dateien in den Bündelungsprozess einzubeziehen, stellen Sie sicher, dass Sie die neueste Version von Microsoft.AspNet verwenden .Web.Optimization-Paket.
Alternative Lösung (veraltet)
Wenn Sie nicht auf die neueste Version des Pakets aktualisieren können, können Sie den folgenden Hack in Betracht ziehen:
ignoreList.Ignore("*.min.js", OptimizationMode.WhenEnabled);
Dadurch wird der Bundler angewiesen, .min.js-Dateien zu ignorieren, wenn die Optimierung aktiviert ist, und sie effektiv in das Bundle aufzunehmen.
Das obige ist der detaillierte Inhalt vonWarum schließt Bundler .min-Dateien aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!