Saya ingin menyimpan satu file .scss pusat yang menyimpan semua definisi variabel SASS untuk sebuah proyek.
// _master.scss
$accent: #6D87A7;
$error: #811702;
$warning: #F9E055;
$valid: #038144;
// etc...
Proyek ini akan memiliki sejumlah besar file CSS, karena sifatnya. Adalah penting bahwa saya menyatakan semua variabel gaya proyek-lebar di satu lokasi.
Apakah ada cara untuk melakukan ini di SCSS?
Jawaban:
Anda dapat melakukannya seperti ini:
Saya memiliki folder bernama utilitas dan di dalamnya saya memiliki file bernama _variables.scss
dalam file itu saya mendeklarasikan variabel seperti:
maka saya memiliki file style.scss di mana saya mengimpor semua file scss saya yang lain seperti ini:
kemudian, dalam salah satu file yang telah saya impor, saya harus dapat mengakses variabel yang telah saya nyatakan.
Pastikan Anda mengimpor file variabel sebelum yang lain Anda ingin menggunakannya.
sumber
$black: #000 !default;
. The!default
thingie mencegah variabel-reset jika sudah ada.Jawaban ini menunjukkan bagaimana saya akhirnya menggunakan ini dan perangkap tambahan yang saya tekan.
Saya membuat file master SCSS. File ini harus memiliki garis bawah pada awalnya agar dapat diimpor:
Kemudian, di header semua file .SCSS saya yang lain, saya mengimpor master:
PENTING
Jangan menyertakan apa pun kecuali variabel, deklarasi fungsi dan fitur SASS lainnya dalam
_master.scss
file Anda . Jika Anda menyertakan CSS yang sebenarnya, itu akan menduplikasi CSS ini di setiap file yang Anda impor ke master.sumber
Pertanyaan ini sudah lama ditanyakan jadi saya pikir saya akan mengirim jawaban yang diperbarui.
Anda sekarang harus menghindari penggunaan
@import
. Diambil dari dokumen:Daftar alasan lengkap dapat ditemukan di sini
Anda sekarang harus menggunakan
@use
seperti yang ditunjukkan di bawah ini:_variables.scss
_otherFile.scss
Anda juga dapat membuat alias untuk namespace:
_otherFile.scss
sumber
Buat index.scss dan di sana Anda dapat mengimpor semua struktur file yang Anda miliki. Saya akan menempelkan Anda indeks saya dari proyek perusahaan, mungkin itu akan membantu cara struktur file lain di css:
Dan Anda dapat menontonnya dengan tegukan / mendengus / webpack dll, seperti:
gulpfile.js
// Tugas SASS
sumber
Bagaimana kalau menulis beberapa kelas berbasis warna dalam file sass global, jadi kita tidak perlu peduli di mana variabelnya. Seperti berikut ini:
dan kemudian, kita bisa menggunakan
background-color
kelas dalam file apa pun. Maksud saya adalah saya tidak perlu mengimporvariable.scss
file apa pun, cukup gunakan saja.sumber