Ho un problema con usemin e non sono sicuro che si tratti di un bug.Può gulp-usemin accettare più file?
La mia struttura applicazione è semplice:
- root
|- gulpfile.js
|- app
| |- index.html
| |- about.html
| |- contact.html
| |- js
| |- a.js
| |- b.js
| |- c.js
| |- d.js
| |- e.js
|
|- dist
Ognuno dei miei file html è un blocco usemin in modo da includere tutti gli script, ad esempio:
<!-- build:js js/app.js -->
<script src="../js/a.js"></script>
<script src="../js/b.js"></script>
<script src="../js/c.js"></script>
<script src="../js/d.js"></script>
<script src="../js/e.js"></script>
<!-- endbuild -->
Quando eseguo la seguente attività :
gulp.task('usemin'. function() {
gulp.src('app/*.html')
.pipe(usemin({
assetDir: 'app/**/'
}))
.pipe(dest('dist/'))
});
solo il primo file html verrà copiato nella nuova directory, il js in questo ca se è concatenato come previsto.
quando cambio la gulp.src
a gulp.src(['index.html','about.html','contact.html'])
ottengo un tema differente, tutti i file html copiare, ma solo il primo in ordine alfabetico corre il blocco usemin sostituendo i 5 script con il nuovo script.
Eventuali approfondimenti sarebbero grandiosi, ho letto estesamente la documentazione di gulp e la documentazione di gulp-usemin e non trovo alcun motivo per cui ciò dovrebbe accadere.
L'esempio sul sito Web NPM per il primo dei miei due casi è addirittura fornito come esempio, non è sicuro che cosa sta succedendo qui? Forse qualcosa a che fare con dove sto correndo il gulpfile?
È possibile?
Cheers.
EDIT: Non so cosa stesse succedendo qui, ma ho creato un progetto totalmente nuovo e ho costruito/installato i plug-in e gli script npm da zero e tutto ha funzionato. Non è una grande soluzione, ma mi ha salvato un po 'di tempo.
Beh, sono almeno manca un preventivo che termina in assetDir: 'app/** /. Inoltre, prendendo a prestito dalla pagina GitHub di gulp-usemin: "Percorso root alternativo per le risorse". Quindi forse dovrebbe essere "app /"? – juunas
@juunas questo è il codice di psudo, ma grazie male correggere quello. I miei extra in questo esempio sono in app/js, quindi ho bisogno di specificare che si trovano in una sottodirectory di app non come i file .html. –
Dopo aver controllato il [codice] (https://github.com/zont/gulp-usemin/blob/master/lib/blocksBuilder.js#L39), l'app/** probabilmente non funzionerà quando viene collegato a [ path.resolve] (http://nodejs.org/api/path.html#path_path_resolve_from_to). – juunas