Advertisement
  1. Code
  2. HTML & CSS

Bekembang Bersama Sass dan DevTools Chrome

Scroll to top
Read Time: 7 min

Indonesian (Bahasa Indonesia) translation by Nurul Fatimah (you can also view the original English article)

Pada artikel ini kita akan melihat bagaimana kita dapat mengintegrasikan Chrome DevTools dengan lebih baik ke dalam workflow development Sass.


Mengintip Tutorial!

Berikut ini sekilas tentang apa yang akan kita lakukan dalam tutorial ini melalui GIF animasi:

edit-sassedit-sassedit-sass

Di sebelah kiri adalah terminal dan editor teks Sublime, dan di sebelah kanan adalah Chrome. Perubahan pada file .scss sedang dipertahankan ke disk, yang tercermin dalam Sublime, perintah Sass watch menghasilkan versi baru dari file CSS ketika mendeteksi perubahan pada file Sass, yang pada gilirannya diambil oleh DevTools dan tercermin ke halaman.


Kebutuhan untuk Workflow yang Lebih Baik

Jadi apa yang kita coba selesaikan di sini? Mengapa kita ingin workflow yang lebih baik? Baiklah, mari kita tinjau contoh men-debug beberapa CSS yang dihasilkan oleh Sass, diberikan file .scss berikut, yang berisi:

1
$myColor: green;
2
3
body {
4
  .box {
5
		color: $myColor;
6
	}
7
}

Dan sekarang CSS, yang dihasilkan oleh file Sass di atas, akan terlihat seperti ini:

1
body .box {
2
  color: green; }

Sekarang kita hanya perlu sedikit HTML untuk menerapkan gaya kita ke:

1
<div class="box">Hello</div>

Ok, sejauh ini bagus. Sekarang kita ingin mulai merancang dan mengembangkan halaman menggunakan Chrome DevTools. Pertama, kita memeriksa div dengan kelas box dengan mengklik kanan dan memilih Inspect Element. Kemudian kita bisa perikasa panel gaya, yang menunjukkan nilai hijau untuk properti color, catatan pada nama file yang terkandung di dalamnya, bersama dengan nomor baris yang muncul pada pemilih. Sekarang di sinilah masalahnya - CSS yang diproses tidak mengikuti, baris demi baris, seperti apa file sumber .scss, yang dapat berdampak negatif pada workflow development kita.

sublime-source-vs-outputsublime-source-vs-outputsublime-source-vs-output

Pada gambar di atas, panel kiri menunjukkan file sumber .scss dan sisi kanan menunjukkan versi yang diproses. (Catatan Saya menggunakan bundel SCSS untuk highlighting sintaks dalam Teks Sublime)

dev-tools-regular-viewdev-tools-regular-viewdev-tools-regular-view

DevTools kemudian memberikan tautan ke file dan nomor baris pemilih, yang disorot dengan warna merah di atas, yang secara mengejutkan menghubungkan ke file yang diproses (gambar di bawah). Sekarang ini bertindak sebagai batasan untuk mengedit file di dalam DevTools karena kita tidak dapat mengambil manfaat dari penyimpanan file. Sebagai contoh, jika kita tetap melakukan perubahan pada file yang diproses, mereka hanya akan ditimpa ketika Sass selanjutnya berjalan.

Faktanya, kita bahkan tidak memiliki indikasi yang jelas tentang apa nomor baris yang sesuai - tentu saja, secara praktis, contoh kita di atas sangat sederhana dan kita dapat dengan cepat memahami garis peta apa, dengan melihat kode. Namun dalam file .scss yang lebih besar, berbagai hal bisa menjadi lebih rumit.

sources-panel-regularsources-panel-regularsources-panel-regular

Seperti yang Anda lihat di atas, DevTools tidak memahami file .scss, namun kita dapat mengatasi ini dengan memanfaatkan workflow DevTools dan Sass, yang akan kita lihat dalam tutorial ini. Singkatnya, kurangnya dukungan Sass di DevTools dapat berarti:

  • Kita tidak segera mengetahui nomor baris tempat pemilih dan/atau properti CSS ada, di dalam file sumber kita.
  • Mempetahankan perubahan CSS kita ke sistem file cukup banyak dari pertanyaan.
  • Bahkan sekadar melihat file .scss di panel sumber sulit karena DevTools tidak mengenali ekstensi sebagai ekstensi yang harus dilihat.

Mempersiapkan Dukungan Sass

Chrome

Penting: Dukungan Sass adalah fitur eksperimental. Harap diingat bahwa, meskipun sudah ada untuk sementara waktu sekarang, hal-hal dapat berubah. Jika ya, kita akan melakukan yang terbaik untuk memperbarui artikel ini.

Sekarang mari kita bernavigasi about:flags di omnibox, lalu temukan Enable Developer Tools experiments, aktifkan, dan mulai ulang Chrome.

chrome-flagschrome-flagschrome-flags

Gambar di bawah ini menunjukkan panel experiments, Anda dapat mencapai ini dengan mengklik roda gigi di sudut kanan bawah DevTools dan mengklik 'Experiments', lalu centang kotak untuk Support for Sass.

dev-tools-experimentsdev-tools-experimentsdev-tools-experiments

Setelah menutup dan membuka DevTools, Anda sekarang dapat pergi ke item menu General di sidebar kiri jendela settings dan menavigasi ke bagian Sources, dari sana, centang 'Enable source maps' dan 'Auto-reload CSS upon Sass save'. Timeout dapat dibiarkan pada nilai default.

sass-support-dev-toolssass-support-dev-toolssass-support-dev-tools

Sass

Tutorial ini menggunakan versi terbaru dari Sass (3.3.0 pada saat penulisan ini) karena ada beberapa dukungan awal untuk peta sumber. Inilah cara Anda dapat menginstal Sass menggunakan Rubygems:

1
gem install sass --pre
sass-gem

Kita sekarang perlu memberi tahu Sass untuk mengkompilasi file .scss, menggunakan perintah berikut:

1
sass --watch --scss --sourcemap styles.scss:styles.css

Dari atas, styles.scss adalah file sumber Anda dan styles.css adalah file yang diproses, yang akan digunakan halaman HTML Anda. Berikut cara Anda menautkan file .css yang diproses:

1
<link rel="stylesheet" type="text/css" href="styles.css">

Jika Anda melihat sesuatu yang mirip dengan gambar di bawah di terminal Anda:

sass-command-linesass-command-linesass-command-line

...dan Anda melihat file .map yang dihasilkan, lalu, selamat: Sass debugging berfungsi! Inilah yang dilakukan opsi-opsi perintah lain dari perintah kompilasi sebelumnya:

  • --watch: Akan mengawasi perubahan pada file sumber .scss dan mengkompilasinya segera setelah ia mendeteksi perubahan.
  • --scss: Akan menampilkan gaya apa dari Sass yang digunakan.
  • --sourcemap: Akan menghasilkan file peta sumber yang sesuai.

Sekarang, memiliki pemahaman tentang peta sumber tidak penting untuk diikuti, namun tentu saja ini sesuatu yang layak dibaca karena dimaksudkan untuk membantu proses pengembangan. Lihat di bawah untuk beberapa sumber pada peta sumber:


Dari Elemen ke Sumber

elem-to-sourceelem-to-sourceelem-to-source

Dengan asumsi semua berjalan dengan baik, membuka halaman Anda di mana dukungan Sass diaktifkan di DevTools harus memungkinkan untuk Sass debugging. Hal pertama yang perlu diperhatikan adalah bahwa nama file akan menampilkan file sumber .scss yang sesuai, yang berguna, selain itu, nomor baris dengan benar mencerminkan nomor baris dalam file sumber.

elements-sasselements-sasselements-sass

Mengklik pada nama file akan membawa Anda langsung ke panel sumber dengan garis yang sesuai dengan pemilih yang disorot.

Catatan: Anda sekarang memiliki file Sass yang dapat dilihat langsung di browser Anda dengan penyorotan sintaks!

sources-panel-sasssources-panel-sasssources-panel-sass

Oke, jadi menemukan pemilih CSS yang sesuai dari panel Elements itu keren, tapi bagaimana dengan properti CSS?

Pada tangkapan layar di bawah ini, panel Sources telah menyoroti properti CSS yang saya minati, untuk sampai ke sana saya telah Command-Clicked pada properti dari dalam panel Elements. Fakta bahwa itu telah membawa saya ke garis di mana nilai itu didefinisikan (bukan line: property: $value;) sangat kuat!

sources-property-sass

Catatan: Menavigasi ke properti CSS di panel sumber dari perintah mengklik properti di panel Elements tidak khusus untuk Sass, itu dapat dicapai dengan CSS biasa juga.


Pengeditan Sass Dengan Perubahan Persisten

Mengedit file Sass tidak jauh berbeda dari mengedit file CSS biasa, satu hal yang perlu kita lakukan adalah memastikan DevTools tahu di mana file .scss berada di sistem file. Dari dalam panel Sources , bilah sisi sebelah kiri harus memiliki panel Sources  yang menampilkan file .scss, klik kanan dan pilih Save as, kemudian timpa file sumber .scss yang ada.

sources-save-as-sasssources-save-as-sasssources-save-as-sass

Karena kita memeriksa 'Auto-reload CSS upon Sass save' dan karena Sass berjalan di terminal dengan flag watch, perubahan dilakukan dengan sangat cepat dan DevTools dapat menunjukkan kepada kita perubahan tersebut.

Bahkan mixins berfungsi seperti yang diharapkan, menempelkan yang berikut ini, dalam file .scss yang hampir kosong di dalam panel sources menghasilkan CSS yang benar yang dihasilkan, yang dapat diisi ulang oleh DevTools dalam hitungan detik.

1
@mixin button {
2
    border: 2px solid green;
3
    display: inline-block;
4
    padding: 10px;
5
    border-radius: 4px;    
6
}
7
8
.box {
9
    @include button;   
10
}
mixin-sourcesmixin-sourcesmixin-sources

Seperti yang dapat Anda lihat pada gambar di atas, sisi kiri memperlihatkan file sumber .scss, yang akan diubah, sisi kanan menunjukkan file .css yang dihasilkan dari mana DevTools menerima perubahan (segera terima kasih ke flag watch di terminal)


Sass Debugging di Fluent Conf

Paul Irish memberikan pernyataan hebat di Fluent yang memiliki banyak informasi menarik tentang Chrome DevTools, tetapi juga penggunaan Sass. Lewati ke 5:30 untuk informasi Sass.


Ringkasan

Mari kita bahas beberapa poin utama yang dibahas dalam tutorial ini:

  • Kemampuan Sass di Chrome DevTools adalah cara yang bagus untuk melihat dan memodifikasi sumber Sass, meskipun jangan lupa untuk mengaktifkannya baik about:flags maupun di panel settings.
  • Saat menggunakan Sass dan Chrome DevTools dalam suatu proyek, Anda cenderung memiliki workflow yang lebih efisien dengan melihat/mengedit file sumber, daripada file yang dihasilkan.
  • Properti CSS di panel element dapat diklik-perintah, nama file yang ditampilkan di sebelah kanan pemilih juga dapat diklik. Keduanya akan membawa Anda ke bagian yang relevan di panel sumber.
  • Memanfaatkan kemampuan mengedit panel Sources dengan melakukan 'Save as' pada file .scss, penyimpanan di masa depan (Command + S) harus menimpa file.
  • Chrome Canary dan versi terbaru dari Sass 3.3.0 (karena Sumber peta) digunakan dalam tutorial ini, pastikan untuk mencobanya!

Link menarik

Seperti yang Anda lihat, workflow development dengan Sass tidak sempurna, tapi itu pasti jauh lebih baik daripada dulu. Seiring berjalannya waktu, DevTools akan memberikan workflow yang lebih ramping untuk mengedit file CSS dan bug akan diperbaiki! Masalah apa pun yang Anda temukan dapat dimunculkan sebagai bug di crbug.com.

Terima kasih sudah membaca artikel ini!

Seperti apa yang sudah Anda pelajari? Pelajari Lebih Lanjut Tentang Chrome DevTools!

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.