Использование шаблона ZURB Foundation, построение с помощью NPM.
У меня есть следующий код на моей странице макета default.html:
<script src="{{root}}assets/js/app.js"></script>
{{#ifpage 'admin'}}
<script src="{{root}}assets/js/single-page/admin.js"></script>
{{/ifpage}}
{{#ifpage 'dashboard'}}
<script src="{{root}}assets/js/single-page/dashboard.js"></script>
{{/ifpage}}
В gulpfile.js я являюсь членом массива PATHS 'javascript':
'!src/assets/js/single-page/**/*'
Затем я делаю:
gulp.task('single-page', function() {
return gulp.src('src/assets/js/single-page/**/*')
.pipe(gulp.dest('dist/assets/js/single-page'))
.on('finish', browser.reload);
});
Затем...
gulp.task('build', function(done) {
sequence('clean', ['pages', 'sass', 'javascript', 'single-page', 'images', 'php', 'chart_data', 'copy'], 'styleguide', done);
});
И наконец...
gulp.task('default', ['build', 'server'], function() {
gulp.watch(PATHS.assets, ['copy']);
gulp.watch(['src/pages/**/*'], ['pages']);
gulp.watch(['src/{layouts,partials,helpers,data}/**/*'], ['pages:reset']);
gulp.watch(['src/assets/scss/**/{*.scss, *.sass}'], ['sass']);
gulp.watch(['src/assets/js/**/*.js'], ['javascript']);
gulp.watch(['src/assets/js/single-page/**/*.js'], ['single-page']);
gulp.watch(['src/assets/img/**/*'], ['images']);
gulp.watch(['src/assets/php/**/*'], ['php']);
gulp.watch(['src/assets/chart_data/**/*'], ['chart_data']);
gulp.watch(['src/styleguide/**'], ['styleguide']);
});
Мои три страницы — это страницы PHP с именами index.php, admin.php и dashboard.php. Каталог js/single-page записывается в папку dist, и там находятся два файла JS.
Условие Panini, похоже, не работает, поэтому пути, специфичные для администратора и панели инструментов, не отображаются на соответствующих страницах PHP.
Колин Маршалл в своем ответе на Как добавить JavaScript только для одной конкретной страницы? упоминает файл config.yml и gulpfile.babel.js, ни один из которых не находится в каталоге моего проекта.
Какие-либо предложения?
Спасибо.