Despre Live Reload

Gulp | Stefanescu Mihai | 2020-10-11

BrowserSync este folosit pentru a urmari schimbarile din fisierele HTML si CSS si sa faca refresh paginii din browser cand acestea se schimba.

Instalare BrowserSync

Acest plugin poate face cross-browser css injection. Poate fi instalat cu urmatoarea comanda:

npm install browser-sync --save-dev

Configurare BrowserSync

Pentru a putea folosi BrowserSync trebuie sa mai scriem ceva in fisierul de configurare:

var browserSync = require('browser-sync').create();

Trebuie sa facem un task si pentru BrowserSync astfel incat sa il folosim alaturi de Gulp. Din moment ce rulam gulp trebuie sa setam si pentru BrowserSync unde este proiectul:

gulp.task('browserSync', function() {
   browserSync.init({
      server: {
         baseDir: 'build'
      },
   })})

Putem injecta noile stiluri in browser folosind si task-ul pentru CSS-uri:

gulp.task('styles', function() {
   
   gulp.src(['src/styles/*.css'])
   .pipe(concat('style.css'))
   .pipe(autoprefix('last 2 versions'))
   .pipe(minifyCSS())
   .pipe(gulp.dest('build/styles/'))
   .pipe(browserSync.reload({
      stream: true
   }))});

Inainte de a face un task si pentru BrowserSync trebuie sa instalam plugin-ul si sa ii facem o dependinta, exact cum v-am artat in articolele precedente din serie.

Cand ati terminat cu configurarea, rulam browserWatch odata cu watch astfel incat sa apara reloading-ul la modificari.

gulp.task('default', ['browserSync', 'styles'], function (){
   gulp.watch('src/styles/*.css', ['styles']);});   

Rulam urmatoarea comanda:

gulp

Dupa rularea comenzii primim urmatorul raspuns in consola:

C:\invata-programare>gulp
[13:01:39] Using gulpfile C:\invata-programare\gulpfile.js
[13:01:39] Starting 'browserSync'...[13:01:39] Finished 'browserSync' after 20 ms
[13:01:39] Starting 'styles'...[13:01:39] Finished 'styles' after 21 ms
[13:01:39] Starting 'default'...[13:01:39] Finished 'default' after 15 ms
[BS] 1 file changed (style.css)[BS] Access URLs:
 ------------------------------------
       Local: http://localhost:3000
    External: http://192.168.1.4:3000
 ------------------------------------
          UI: http://localhost:3001
 UI External: http://192.168.1.4:3001
 ------------------------------------[BS] Serving files from: build

Va deschide browser-ul catre localhost:3000 si la orice schimbare din cod va face reload paginii.



Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ