Je viens de créer un nouveau projet - angular-cli
et a exécuté npm install [email protected] jquery popper.js --save
et changé les parties liées de .angular-cli.json comme ci-dessous
"styles": [
"../node_modules/bootstrap/dist/css/bootstrap.css"
],
"scripts": [
"../node_modules/jquery/dist/jquery.js",
"../node_modules/popper.js/dist/popper.js",
"../node_modules/bootstrap/dist/js/bootstrap.js"
],
cependant recevoir l'erreur ci-dessous
10:2287 Uncaught SyntaxError: Unexpected token export
at eval (<anonymous>)
at webpackJsonp.../../../../script-loader/addScript.js.module.exports (addScript.js:9)
at Object.../../../../script-loader/index.js!../../../../popper.js/dist/popper.js (popper.js?4b43:1)
at __webpack_require__ (bootstrap 4403042439558687cdd6:54)
at Object.2 (scripts.bundle.js:66)
at __webpack_require__ (bootstrap 4403042439558687cdd6:54)
at webpackJsonpCallback (bootstrap 4403042439558687cdd6:25)
at scripts.bundle.js:1
toute idée de comment résoudre ce problème?
merci d'avance...
En regardant les documents sur https://getbootstrap.com/docs/4.2/getting-started/introduction/#js vous pouvez voir qu'ils importent les éléments suivants:
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
Notez le nom: jquery .slim .min.js, umd /popper.min.js!
J'ai donc utilisé les éléments suivants dans mon .angular-cli.json
:
"styles": [
"../node_modules/bootstrap/dist/css/bootstrap.css"
],
"scripts": [
"../node_modules/jquery/dist/jquery.slim.min.js",
"../node_modules/popper.js/dist/umd/popper.min.js",
"../node_modules/bootstrap/dist/js/bootstrap.min.js"
],
Après cela, cela semble fonctionner maintenant.
J'ai eu le même problème. Ma solution était pas d'importer le dossier dist (./node_modules/popper.js/dist/popper.js) mais plutôt le dossier umd (./node_modules/popper.js/dist/ umd /popper.js). Peu importe si vous obtenez la version mini ou normale du fichier js.
Je peux voir que beaucoup de personnes ont du mal à ajouter et à inclure correctement les dépendances Bootstrap 4 (jQuery, popper.js, etc.). Mais il existe une solution beaucoup plus simple sous la forme de https://ng-bootstrap.github.io .
ng-bootstrap fournit native des directives angulaires écrites à partir de la base. La conséquence positive est que: * Vous n'avez pas besoin d'inclure et de vous inquiéter à propos des directives jQuery, popper.js, etc. . * Fournissent des API qui "ont un sens" dans le monde angulaire
Pour tous ceux qui essaient d’utiliser Bootstrap 4.beta avec Angular - ng-bootstrap vient de publier sa première version bêta entièrement compatible avec Bootstrap 4.beta CSS
Si vous travaillez dans Asp.net, Mvc umd fait aussi l'affaire.
Comme dans https://stackoverflow.com/a/50839939/8497522 , ajoutez simplement dans BundleConfig.cs:
bundles.Add(new ScriptBundle("~/bundles/popper").Include("~/Scripts/umd/popper.js"));
sauf:
bundles.Add(new ScriptBundle("~/bundles/popper").Include("~/Scripts/popper.js"));
Pour exécuter modal, remplacez la cible "es2015" par "es5" dans tsconfig.ts.
"styles": [ "src/styles.css",
"node_modules/bootstrap/dist/css/bootstrap.min.css" ],
"scripts": ["node_modules/jquery/dist/jquery.min.js",
"node_modules/popper.js/dist/umd/popper.min.js",
"node_modules/bootstrap/dist/js/bootstrap.min.js"]
}