В общем есть такая структура проекта:
src
--pages
----lk-index
----index
------index.js
------index.scss
------index.pug
--components
----footer
----header
------header.js
------header.scss
------header.pug
--static
----scripts
------scripts.js
Вот как выглядит код в компонентах и страницах:
index.js
index()
function index () {
}
header.js
header()
function header () {
}
В итоге я все соединяю в один файл:
const { src, dest } = require('gulp')
const concat = require('gulp-concat')
module.exports = function scripts () {
return src(['./app/pages/*/*.js', './app/components/*/*.js', './app/static/scripts/scripts.js'])
.pipe(concat())
.pipe(dest('dist/js'))
}
И при билде, scripts.js выглядит так:
/* Очень много функций из компонентов и страниц */
index()
function index () {
}
header()
function header () {
}
/* Скрипты из самого файла scripts*/
alert('Hello world')
Нормально ли так делать? Просто все это идет на backend и хочется чтобы уже бек нормально работал с билдинными файлами.
(Пример: Есть плагин noUiSlider в фильтре и есть кнопка сброса, и функция которая сбрасывает все, и в будущем backend должен расширить функцию сброса чтобы менять контент, так-же допишет свои например подпишется на события от самого noUiSldier в уже написанном коде и будет фильтровать контент)