Nehmen wir an, ich habe diese beiden Skript konfiguriert Bundles erhältlich:Machen Sie ein Skript-Bundle enthalten ein anderes Skript Bündel
bundles.Add(new ScriptBundle("~/Scripts/Bootstrap").Include(
"~/Content/Scripts/jQuery/jquery-2.1.1.js",
"~/Content/Scripts/Bootstrap/bootstrap.js"));
bundles.Add(new ScriptBundle("~/Scripts/jQuery").Include(
"~/Content/Scripts/jQuery/jquery-2.1.1.js"));
Wie Sie sehen können, ~/Scripts/Boostrap
verwendet eine jQuery JavaScript-Datei und eine eine Bootstrap. Der Grund dafür ist, dass der Bootstrap jQuery benötigt, um zu funktionieren.
Auf der anderen Seite besteht ~/Scripts/jQuery
nur aus der jQuery-Datei.
Ich möchte zwei Bundles für den Fall, dass eine Ansicht nur jQuery und nicht Bootstrap benötigt.
Allerdings repliziere ich Code hier, ich definiere den jQuery JavaScript-Dateipfad zweimal.
Gibt es eine Möglichkeit zu sagen, das ~/Scripts/Boostrap
Bundle zu verwenden oder ein anderes Bündel "injizieren"?
Etwas wie folgt aus:
bundles.Add(new ScriptBundle("~/Scripts/Bootstrap").UseBundle("~/Scripts/jQuery").Include(
"~/Content/Scripts/Bootstrap/bootstrap.js"));
Warum haben nicht nur die jQuery-Bundle sein nur jQuery und die Bootstrap-Bundle sei nur Bootstrap.Fügen Sie Ihrer Ansicht nach jQuery hinzu und bringen Sie gegebenenfalls das Bootstrap-Paket mit. Ich sehe nicht, was einschließlich JQuery in zwei separaten Bundles wirklich kaufen Sie anders als das Speichern eines Skript-Tags in Ihrem HTML. – Tommy
@Tommy Ich könnte das tun, und die Arbeit des Clients, die eine weitere Anfrage macht, ist kaum wahrnehmbar, aber wenn es einen optimaleren Weg gibt, um das zu erreichen, was ich will, und immer noch den Client eine einzige Anfrage für beide Skripte senden wäre super –
Leider kann hier nichts anderes gesagt werden als nein, das ist nicht möglich. Es gibt keine Möglichkeit, ein Bündel in einem anderen Bündel zu referenzieren. –