27

Sto seguendo uno codelab sulla pagina Web di Yeoman, e fino ad ora sono riuscito a seguire (con alcuni intoppi importanti che hanno portato il mio ambiente di sviluppo a funzionare, ma ora non restituisce errori).Yeoman e Bower non aggiungono Bootstrap CSS (generatore AngularJS)

Quindi ho creato la cartella del progetto e ho eseguito yo, selezionato AngularJS ed eseguito la cosa. Abbastanza presto nel processo ho ottenuto un prompt ? Overwrite package.json? ho risposto con y e ottenuto le seguenti avvertenze:

npm WARN package.json [email protected] No license field. 
npm WARN peerDependencies The peer dependency [email protected]>=0.9 included from karma-jasmine will no 
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency 
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly. 
npm WARN peerDependencies The peer dependency [email protected]* included from karma-jasmine will no 
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency 
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly. 
npm WARN peerDependencies The peer dependency [email protected]>=0.9 included from karma-phantomjs-launcher will no 
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency 
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly. 
npm WARN peerDependencies The peer dependency [email protected]>=1.9 included from karma-phantomjs-launcher will no 
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency 
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly. 
npm WARN peerDependencies The peer dependency [email protected]~0.12.0 included from grunt-karma will no 
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency 
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly. 
npm WARN optional dep failed, continuing [email protected] 

Dopo di che, è finito quello che stava facendo, quindi mi sono imbattuto bower install di nuovo solo per essere sicuro (a causa della package.json thing), quindi grunt serve. Ora grunt dice fatto, senza errori, ma la mia pagina carica solo main.css. Ho la netta sensazione che manchi il file bootstrap.css. This è quello che sembra, quando le istruzioni di codelab dicono che dovrebbe apparire come this.

Se hai bisogno di ulteriori informazioni su ciò che è stato generato, ecco uno GitHub repository link.

Qualsiasi intuizione su cosa sto facendo male (se possibile) è il benvenuto.

risposta

57

Dopo aver eseguito il codelab, ho avuto esattamente lo stesso problema con lo stesso risultato ottenuto (avvisi e tutto). Ho dovuto risolvere il problema tornando a Bootstrap 3.3.4.

Basta modificare bower.json e cambiare la linea di Bootstrap per:

"bootstrap": "3.3.4", 

Quindi eseguire il seguente e dovrebbe funzionare:

bower install 
    grunt serve 
+2

prima di modificarlo, la mia linea di bootstrap aveva un '^' prima del numero di versione (come questo '" angolare ":"^1.3.0 "'). Qualche idea su quello che fa, e se dovessi rimetterlo prima della versione di bootstrap? Oltre a questo, il sito sembra che dovrebbe ora, quindi sono finalmente pronto per andare avanti con il codelab. grazie –

+4

Credo che significhi solo che il requisito è qualcosa di più alto di 1.3.0. Quindi per bootstrap era "bootstrap": "^ 3.2.0", che significa installare qualsiasi cosa che sia superiore alla 3.2.0. Quindi va e installa l'ultimo 3.3.5 che non funziona. Impostandolo su 3.3.4 senza il^dice solo installare questa versione, niente di più alto. – chipzilla

+0

@chipzilla grazie amico, hai salvato la mia prima app :) –

11

Se attenersi a una conchiglia, si può semplicemente digitare :

bower install --save bootstrap#3.3.4 
grunt serve 

che farà in modo che Twitter Bootstrap viene declassata ad una più Bower/yo-angolare amichevole v ersione e salvarlo come dipendenza dev. Grunt eseguirà quindi "wiredep" durante l'attività "serve" e aggiungerà il file bootstrap.css nel file index.html del progetto.

26

Non ha funzionato neanche per me. Ho ottenuto una soluzione da qui: https://github.com/twbs/bootstrap/issues/16663

Abbiamo risolto temporaneamente questo problema sovrascrivendo il nostro progetto bower.json. Per noi funziona bene, ma stiamo aspettando qualche soluzione da Bootstrap.

"overrides":{ 
    "bootstrap" : { 
     "main": [ 
      "less/bootstrap.less", 
      "dist/css/bootstrap.css", 
      "dist/js/bootstrap.js" 
      ] 
    } 
    } 
1

Nel file bower.json, la versione di dipendenza di Bootstrap è impostato come:

"bootstrap": "^3.2.0", 

Per impostazione predefinita, questo significa che installare l'ultima versione superiore 3.2.0. Come risultato, l'ultima versione 3.3.5 è installata e si rompe.

Quindi, rimuovere il segno ^ e sostituire:

"bootstrap": "^3.2.0", 

con:

"bootstrap": "3.3.4", 
0

E non è l'ideale, ma ho rotolato indietro per il Bootstrap versione 3.3.4 e la creazione in questo modo:

bower install --save bootstrap#3.3.4 

bower_concat: { 
    all: { 
    dest: { 
     'js': 'path/to/file/_bower.js', 
     'css': 'path/to/file/_bower.css' 
    } 
    } 
}