webentwicklung-frage-antwort-db.com.de

Bootstrap 4 (Beta) -Nuget-Paket kann nicht in .Net MVC (.Net-Version 4.6.2) installiert werden.

Ich kann Bootstrap 4(beta) nicht in meinem MVC-Projekt installieren. Um genau zu sein, die popper.js-Nuget-Abhängigkeit kann nicht installiert werden. Bitte lassen Sie mich jeden möglichen Weg wissen (Bower-Installation ist immer noch ein Weg, aber ich möchte mit Nuget gehen)

Das Paket 'popper.js 1.11.0' konnte nicht installiert werden. Du versuchst zu Installieren Sie dieses Paket in einem Projekt mit dem Ziel '.NETFramework, Version = v4.6.2', das Paket enthält jedoch kein Assemblyverweise oder Inhaltsdateien, die mit diesem .__ kompatibel sind. Rahmen. Weitere Informationen erhalten Sie vom Autor des Pakets

14
Debananda

Ich konnte Bootstrap 4-Beta endlich zum Laufen bringen, indem ich Folgendes tat:

1.) Installieren Sie das popper.js NuGet Package V1.12.3 

2.) Installieren Sie das Bootstrap4-beta NuGet Package

3.) Aktualisieren Sie Ihren BundleConfig.cs, um Folgendes aufzunehmen: Notieren Sie sich den Pfad zu popper.js

bundles.Add(new ScriptBundle("~/Scrpts/Bootstrap").Include(
                             /*** Make sure popper.js is pointing to umd ***/
                             "~/Scripts/umd/popper.js", 
                             "~/Scripts/bootstrap.js",
                             ));

bundles.Add(new StyleBundle("~/CSS/Bootstrap").Include(
                            "~/Content/bootstrap.css"));

Wenn Sie versuchen, die Datei popper.js im Stammverzeichnis des Ordners \Scripts zu verwenden, erhalten Sie aus irgendeinem Grund die Fehlermeldung:

SyntaxError: export declarations may only appear at top level of a module

aber die Version im /Scripts/umd scheint zu funktionieren.

14
Andy Braham

Sie können dies umgehen, indem Sie das Paket popper.js manuell zu Ihrer Paket-Konfiguration hinzufügen.

<package id="popper.js" version="1.11.1" targetFramework="net462" />

Dann können Sie in den Paket-Manager von nuget gehen und normal installieren.

5

Ich konnte dieses Problem umgehen, indem ich das neueste (1.12.3 zum Zeitpunkt des Schreibens) popper.js-Nuget-Paket vor dem Update auf Bootstrap 4.0 herunterlud. 

Dann habe ich in der bundles.config die Popper-Js so hinzugefügt

bundles.Add(new ScriptBundle("~/bundles/popper").Include(
                      "~/Scripts/umd/popper.js"));

Die umd-Version war die einzige, die für mich funktionierte, die anderen gaben einen Konsolenfehler von 

Nicht erkannter Token-Export

Stellen Sie sicher, dass Sie die Popper-js-Datei vor der Bootstrap-Datei einfügen.

@Scripts.Render("~/bundles/popper")
@Scripts.Render("~/bundles/bootstrap")

Ich bemerkte auch, dass dies den Großteil der automatisch erstellten Vorlage brach, da diese auf früheren Versionen von Bootstrap basierte. Die Navbar verschwindet fast vollständig. Ich konnte meinen Fehler beheben, indem ich Folgendes durch Folgendes ersetze. Dies umfasst jedoch keine Elemente im mobilen Menü.

<div class="navbar navbar-expand-lg navbar-dark bg-dark">   
        <a class="navbar-brand" href="#">My Blog</a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse">
            <ul class="navbar-nav">
                <li class="nav-item">@Html.ActionLink("Home", "Index", "Home", new { @class = "nav-link" })</li>
                <li class="nav-item">@Html.ActionLink("About", "About", "Home", new { @class = "nav-link" })</li>
                <li class="nav-item">@Html.ActionLink("Contact", "Contact", "Home", new { @class = "nav-link" })</li>
            </ul>                
        </div>        
    </div>

Ich weiß, dass diese Frage ein paar gute Antworten hat, aber dies war die vollständige Lösung, die für mich funktionierte. Ich dachte, ich würde sie in der Hoffnung teilen, dass sie jemandem in Zukunft etwas Zeit erspart.

2
Numli

Dasselbe Problem hier ... Ich habe ein Problem auf GitHub erstellt: https://github.com/FezVrasta/popper.js/issues/387

1
TrustNo_1

Erweitern Sie vor der Installation des Pakets mit NuGet "Options" und ändern Sie das "Abhängigkeitsverhalten" in "Höchster Wert". Wenn Sie nun das Paket installieren, werden zuerst die neuesten popper.js-Dateien installiert, so dass bootstrap ebenfalls installiert werden kann.

Dies verhinderte, dass ich Popper separat installieren musste.

1
Nick

Das Popper.js NuGet-Paket ist bis Version 1.12.2 defekt.
Bootstrap benötigt immer noch die Version 1.11.x, die leider defekt ist.

Sie sollten warten, bis Bootstrap dieses Problem schließt.
https://github.com/twbs/bootstrap/issues/23622

inzwischen können Sie dem Vorschlag von Rob Quincey folgen.

1
Fez Vrasta

Ich war nicht zufrieden mit all den Dateien und Ordnern und TypeScript-bezogenem Code sowie den NuGet- und Debugger-Meldungen, die mit Popper geliefert wurden.

@ Scripts.Render ("~/bundles/jquery")

    <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>

Bisher hat alles gut funktioniert. 

0
JaneH

Für die Verwendung von ASP.NET Webforms:

Ich habe ein neues Projekt mit vorinstallierten Paketen (Bootstrap, Popper, jQuery) erstellt, diese auf die neueste Version aktualisiert und Folgendes ausgeführt:

  1. add to App_Start/BundleConfig.cs

    bundles.Add(new ScriptBundle("~/bundles/popper").Include(
              "~/Scripts/umd/popper.js"));
    
  2. Zur Kopfzeile hinzufügen (Masterseite)

    <asp:PlaceHolder runat="server"> <%: Scripts.Render("~/bundles/popper") %> <%: Scripts.Render("~/bundles/bootstrap")%> </asp:PlaceHolder>

0
fubo

Wieder kein Fix, aber ähnlich dem Fix von @Alex.

Ich habe das Problem gelöst, indem ich sie separat mit NuGet installiert habe. Also zuerst Popperjs installieren (einfach nach Popper im Paketmanager von NuGet suchen) und dann Bootstrap 4 installieren. Es scheint, dass der obige Fehler nur dann auftritt, wenn er als abhängiges Element heruntergeladen werden muss . Sehr komisch.

0
Rob Quincey