2017-10-15 4 views
0

In Bootstrap 4 Beta gibt es eine neue Abhängigkeit hinzugefügt, die popper.js. Wenn ich meine npm-Abhängigkeiten in package.json auf Bootstrap 4 beta und ng-bootstrap auf 1.0.0-beta.5 aktualisiere, bekomme ich "UNMET PEER DEPENDENCY" für popper.js. (. Wenn ich npm installieren nennen) jedoch auf der website of ng-bootstrap geschrieben:Bootstrap 4 beta npm Abhängigkeit mit ng-Bootstrap

„Nein, das Ziel von ng-Bootstrap ist vollständig JavaScript-Implementierung für Komponenten ersetzen Auch sollten Sie auch andere Abhängigkeiten wie jQuery oder popper.js. Es ist nicht notwendig und könnte den ng-Bootstrap-Code stören. "

Also ich sehe den Punkt nicht. Wenn ich es nicht hinzufüge, bekomme ich die Warnung oben geschrieben. Aber die Website fordert mich auf, es nicht hinzuzufügen. Was habe ich falsch verstanden?

Ich werde Popper nicht verwenden, also wenn es nicht notwendig ist, möchte ich es meinen Abhängigkeiten nicht hinzufügen.

+0

npm weiß nicht alles. Sie sagen es zum Download Bootstrap, Bootstrap hat eine deklarierte Abhängigkeit von Popper, so dass npm Sie davor warnt. Da Sie aber nur an dem CSS-Teil von Bootstrap interessiert sind, wissen Sie, dass die Popper-Abhängigkeit nicht wirklich benötigt wird, sodass Sie die Warnung ignorieren können. –

Antwort

2

ich in das gleiche Problem lief, und auch wenn es dokumentiert ist, könnte es noch deutlicher sein ...

Es in ng-bootstrap getting started geschrieben ist, dass es auf Angular UND Bootstrap abhängt. Daher müssen Sie Bootstrap in Ihren package.json und Referenz css/js Dateien in Ihrem .angular-cli.json

Aber wie geschrieben, in Bootstrap source documentation enthalten, ist bootstrap.min.js nicht enthält Popper (erforderlich durch Bootstrap). Verringern Sie entweder Popper selbst oder bootstrap.bundle.min.js hier statt bootstrap.min.js

verwenden importieren die Dateien:

package.json:

... 
"dependencies": { 
    "@ng-bootstrap/ng-bootstrap": "^1.0.0-beta.9", 
    "bootstrap": "^4.0.0-beta.3", 
}, 
... 

app.module.ts:

... 
    imports: [ 
    ... 
    NgbModule.forRoot() 
], 
... 

.angular-cli.json:

... 
    "styles": [ 
    "styles.css", 
    "../node_modules/bootstrap/dist/css/bootstrap.min.css" 
    ], 
    "scripts": [ 
    "../node_modules/jquery/dist/jquery.min.js", 
    "../node_modules/bootstrap/dist/js/bootstrap.bundle.min.js" 
    ], 
... 
Verwandte Themen