Când alergați înghițitură. Rulează și compilează SASS o singură dată. Cum pot regla ceasul astfel încât să urmărească în continuare modificările. Trebuie să adaug usePolling: true sau usegulp.series. Urmează exact instrucțiunile de la Bootstrap 4 SASS - Kit de pornire Barrio
Configurația mea:
miez drupal 9.1.10
bootstrap_barrio 8.x-4.33
bootstrap_sass 8.x-1.13
nodul v12.22.1
npm 6.14.12
Versiunea gulp CLI: 2.3.0
gulp Versiunea locală: 4.0.2
Vagrant pe Windows folosind o mașină virtuală Redhat 7
let gulp = require('gulp'),
sass = cere('gulp-sass'),
hărți sursă = require('gulp-sourcemaps'),
cleanCss = require('gulp-clean-css'),
rename = require('gulp-rename'),
postcss = require('gulp-postcss'),
autoprefixer = require('autoprefixer'),
browserSync = require('browser-sync').create()
const paths = {
scss: {
src: './scss/style.scss',
dest: './css',
ceas: './scss/**/*.scss',
bootstrap: './node_modules/bootstrap/scss/bootstrap.scss'
},
js: {
bootstrap: „./node_modules/bootstrap/dist/js/bootstrap.min.js”,
jquery: „./node_modules/jquery/dist/jquery.min.js”,
popper: „node_modules/popper.js/dist/umd/popper.min.js”,
popper: „node_modules/popper.js/dist/umd/popper.min.js.map”,
dest: './js'
}
}
// Compilați sass în CSS și injectați automat în browsere
stiluri de funcții () {
returnează gulp.src([paths.scss.bootstrap, paths.scss.src])
.pipe(sourcemaps.init())
.pipe(sass().on('eroare', sass.logError))
.pipe(postcss([autoprefixer({
browsere: [
„Chrome >= 35”,
„Firefox >= 38”,
„Muchie >= 12”,
„Explorator >= 10”,
„iOS >= 8”,
„Safari >= 8”,
„Android 2.3”,
„Android >= 4”,
„Opera >= 12”]
})]))
.pipe(sourcemaps.write())
.pipe(gulp.dest(paths.scss.dest))
.pipe(cleanCss())
.pipe(redenumiți({ sufix: '.min' }))
.pipe(gulp.dest(paths.scss.dest))
.pipe(browserSync.stream())
}
// Mută fișierele javascript în folderul nostru js
funcția js () {
returnează gulp.src([paths.js.bootstrap, paths.js.jquery, paths.js.popper])
.pipe(gulp.dest(paths.js.dest))
.pipe(browserSync.stream())
}
// Server static + vizionarea fișierelor scss/html
function serve () {
browserSync.init({
proxy: „http://orgex1”,
deschis: fals,
})
gulp.watch([paths.scss.watch, paths.scss.bootstrap], stiluri).on('change', browserSync.reload)
}
const build = gulp.series(stiluri, gulp.parallel(js, serve))
exports.styles = stiluri
exports.js = js
exports.serve = servi
exports.default = build
Rezultat la rularea înghițiturii:
[prezentare vagrant@vagrant6]$ gulp
[15:47:33] Utilizarea gulpfile /var/www/html/orgex1/web/themes/custom/presentation/gulpfile.js
[15:47:33] Se începe „implicit”...
[15:47:33] Se începe „stilurile”...
[15:47:37] „Stiluri” terminate după 3,62 s
[15:47:37] Se pornește „js”...
[15:47:37] Se începe „servirea”...
[Browsersync] 3 fișiere modificate (bootstrap.min.js, jquery.min.js, popper.min.js.map)
[15:47:37] S-a terminat „js” după 56 ms
[Browsersync] Proxy: http://orgex1
[Browsersync] Adrese URL de acces:
-----------------------------------
Local: http://localhost:3000
Extern: http://10.0.2.15:3000
-----------------------------------
UI: http://localhost:3001
UI extern: http://localhost:3001
-----------------------------------