2017-08-14 1 views
13

Je ne suis pas en mesure d'installer bootstrap 4 (version bêta) dans mon projet MVC. Pour être précis, la dépendance de popper.js nuget échoue à installer. S'il vous plaît laissez-moi savoir quelque manière que ce possible de le faire (charmille installer est encore une façon, mais je veux aller avec NuGet)Impossible d'installer le package de démarrage 4 bits (beta) sur .Net MVC (version .Net 4.6.2)

Could not install package 'popper.js 1.11.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.6.2', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author

+1

Enfin, le problème a été résolu avec popper.js.1.12.1. Donc, les étapes à résoudre est d'abord installer popper.js de nuget puis mettre à jour le bootstrap – Debananda

Répondre

11

J'ai enfin pu obtenir Bootstrap 4 Beta travail en procédant comme suit:

1.) Installer le popper.js NuGet Paquet V1.12.3

2.) Installer Bootstrap4-bêta NuGet Package

3.) Mettez à jour votre BundleConfig.cs inclure les éléments suivants: Notez le chemin de 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")); 

Pour une raison quelconque, si vous essayez d'utiliser les popper.js dans la racine du dossier \Scripts vous recevrez l'erreur:

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

mais la version dans le /Scripts/umd semble fonctionner.

+0

Merci pour le/umd/tip. C'est ce qu'il a fait. –

5

Vous pouvez contourner ce problème en ajoutant manuellement le package popper.js à votre colis config.

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

Ensuite, vous pouvez aller dans le gestionnaire de paquets de nuget et installer normalement.

+0

malheureusement cela n'a pas fonctionné pour moi. Lors de la mise à jour-Package -Reinstall je reçois l'erreur ci-dessous Update-Package: Une erreur s'est produite lors de la récupération des métadonnées de package pour 'popper.js.1.11.0' à partir de la source '**** \ packages'. À la ligne: 1 char: 1 + Update-Package -Reinstall – Debananda

0

Encore une fois, pas une solution, mais similaire à la solution par @ Alex. J'ai résolu le problème en les installant séparément à l'aide de NuGet, d'abord en installant popperjs (juste en cherchant popper dans le gestionnaire de paquets NuGet) puis en installant Bootstrap 4. Il semble ne rencontrer que l'erreur ci-dessus quand il doit le télécharger en tant que dépendance plutôt que autonome. Très étrange.

+0

Cela se produit car Bootstrap nécessite une ancienne version de Popper.js qui a fourni un paquet NuGet cassé. –

+0

Ahhhh, ça explique ça, c'est bon d'entendre la bouche des chevaux pour ainsi dire. Bon travail sur popper au fait, super petite bibliothèque. –

0

Le paquet Popper.js NuGet a été interrompu jusqu'à la version 1.12.2.
Bootstrap nécessite toujours la version 1.11.x, qui est, malheureusement, cassée.

Vous devez attendre Bootstrap pour fermer ce numéro:
https://github.com/twbs/bootstrap/issues/23622

En attendant, vous pouvez suivre la suggestion de Rob Quincey.

1

J'ai réussi à contourner ce problème en téléchargeant le dernier paquet pop-up (1.12.3 au moment de l'écriture) popper.js avant la mise à jour vers le bootstrap 4.0.

Ensuite, dans le bundles.config j'ai ajouté le popper js comme celui-ci

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

La version umd est le seul qui a fonctionné pour moi les autres ont donné une erreur de la console de

Unrecognised Token Export

Juste assurez-vous d'inclure le fichier pops js avant le fichier bootstrap. J'ai également remarqué que cela a ensuite cassé la majorité du modèle produit automatiquement car il est basé sur les versions précédentes de bootstrap. La barre de navigation disparaît presque complètement. J'ai réussi à réparer le mien en le remplaçant par ce qui suit, mais cela n'inclut aucun élément dans le menu mobile.

<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> 

Je sais que cette question a quelques bonnes réponses, mais ce fut la solution complète qui a fonctionné pour moi, donc je pensais que je partage dans l'espoir qu'il épargne quelqu'un un peu de temps à l'avenir.

0

Je n'étais pas satisfait de tous les fichiers et dossiers et le code liés tapuscrit-et NuGet et des messages de débogage fournis avec Popper, donc je suis en utilisant CDNs, comme ceci:

@ 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> 

Jusqu'à présent, tout a bien fonctionné.

1

Avant d'installer le paquet en utilisant NuGet, développez "Options" et changez le "Comportement de dépendance" en "Maximum". Maintenant, lorsque vous installerez le paquet, le dernier popper.js sera installé en premier, ce qui permettra d'installer le bootstrap. Cela m'a empêché d'avoir à installer le popper séparément.