Jadual Kandungan
Memuatkan pemuatan konfigurasi
Organisasi Konfigurasi Lanjutan: Mengumpulkan mengikut ciri
Kesimpulan
Rumah hujung hadapan web tutorial css Let ' s Memberi Tugas -tugas Grunt Rawatan Organisasi Marie Kondo

Let ' s Memberi Tugas -tugas Grunt Rawatan Organisasi Marie Kondo

Apr 18, 2025 am 10:31 AM

Mari Beri Tugas Grunt Rawatan Organisasi Marie Kondo

Skrip Webpack dan NPM menguasai pembangunan JavaScript moden, tugas pengendalian dan penggabungan. Walau bagaimanapun, banyak projek masih bergantung pada Grunt. Walaupun bukan kanak -kanak terbaru di blok, Grunt kekal sebagai kerja keras yang boleh dipercayai. Artikel ini meneroka strategi untuk menyelaraskan dan memperbaiki projek -projek anda yang sedia ada.

Memuatkan tugas supercharging dengan jit-grunt

Secara manual memuatkan setiap tugas mengerang menggunakan grunt.loadNpmTasks adalah membosankan. load-grunt-tasks menawarkan automasi, tetapi jit-grunt memberikan prestasi yang lebih cepat, terutama memberi manfaat kepada projek yang lebih besar.

Perbandingan Prestasi:

Tanpa jit-grunt :

 <code>loading tasks 5.7s ▇▇▇▇▇▇▇▇ 84% assemble:compile 1.1s ▇▇ 16% Total 6.8s</code>
Salin selepas log masuk

Dengan jit-grunt :

 <code>loading tasks 111ms ▇ 8% loading assemble 221ms ▇▇ 16% assemble:compile 1.1s ▇▇▇▇▇▇▇▇ 77% Total 1.4s</code>
Salin selepas log masuk

Peningkatan kelajuan yang ketara! jit-grunt mencapai pengoptimuman ini dengan hanya memuatkan tugas seperti yang diperlukan.

Menggunakan jit-grunt :

  1. Pasang: npm install jit-grunt --save
  2. Ganti penyataan pemuatan tugas anda:
 modul.exports = fungsi (grunt) {
  // bukannya grunt.loadnpmtasks individu ...
  memerlukan ('jit-grunt') (grunt);

  grunt.initconfig ({});
}
Salin selepas log masuk

Memuatkan pemuatan konfigurasi

Langkah seterusnya adalah untuk meremehkan gruntfile anda ke dalam fail konfigurasi yang lebih kecil dan lebih mudah diuruskan. Daripada gruntfile.js monolitik, mengatur konfigurasi anda ke dalam fail berasingan. Kami akan menggunakan load-grunt-configs untuk memuatkan yang cekap.

Menggunakan load-grunt-configs :

 modul.exports = fungsi (grunt) {
  memerlukan ('jit-grunt') (grunt);

  const configs = memerlukan ('beban-grunt-configs') (grunt, {
    config: {src: 'tugas/*. js'}
  });

  grunt.InitConfig (configs);
  grunt.registerTask ('lalai', ['cssmin']);
}
Salin selepas log masuk

Sebagai alternatif, Grunt menawarkan pemuatan tugas asli: grunt.loadTasks('tasks') . Walau bagaimanapun, ini melaksanakan fail dengan segera, tidak sesuai untuk konfigurasi. Untuk memanfaatkan ini, anda mesti mengkonfigurasi tugas dalam fail luaran sendiri menggunakan grunt.config .

Contoh Menggunakan grunt.loadTasks :

 // tugas/mytask.js
modul.exports = fungsi (grunt) {
  grunt.config ('myTask', {
    Pilihan: 'Nilai'
  });
};

// gruntfile.js
modul.exports = fungsi (grunt) {
  memerlukan ('jit-grunt') (grunt);
  grunt.initconfig ({});
  grunt.loadTasks ('tugas');
  grunt.registerTask ('lalai', ['myTask']);
};
Salin selepas log masuk

Organisasi Konfigurasi Lanjutan: Mengumpulkan mengikut ciri

Mengatur tugas dengan nama fail tidak selalu intuitif. Pendekatan yang lebih berkesan adalah untuk konfigurasi kumpulan mengikut ciri atau fungsi.

Daripada banyak fail tugas individu, buat fail yang mewakili ciri (contohnya, styles.js , scripts.js , images.js ). Gunakan grunt.config.merge untuk menggabungkan konfigurasi untuk tugas yang berkaitan, mengelakkan penindasan.

Contoh: Konfigurasi Gaya:

 // tugas/gaya.js
modul.exports = fungsi (grunt) {
  grunt.config ('sass', { / * ... * /});
  grunt.config ('postcss', { / * ... * /});
  grunt.config.merge ({
    Tonton: {
      Gaya: {
        Fail: ['Sumber/Gaya/*. SCSS'],
        Tugas: ['sass', 'postcss']
      }
    }
  });
};
Salin selepas log masuk

Pendekatan ini meningkatkan kebolehbacaan dan kebolehkerjaan, memberikan gambaran yang lebih jelas mengenai struktur projek anda.

Kesimpulan

Walaupun bukan teknologi terbaru, Grunt tetap menjadi pilihan yang sesuai dengan organisasi yang sesuai. Dengan memanfaatkan jit-grunt , load-grunt-configs (atau grunt.loadTasks dengan definisi tugas yang teliti), dan struktur konfigurasi berasaskan ciri, anda dapat meningkatkan kecekapan dan mengekalkan projek-projek anda. Ingatlah untuk berunding dengan dokumentasi Grunt untuk maklumat lanjut dan kemungkinan.

Atas ialah kandungan terperinci Let ' s Memberi Tugas -tugas Grunt Rawatan Organisasi Marie Kondo. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1666
14
Tutorial PHP
1273
29
Tutorial C#
1252
24
Perbandingan pembekal bentuk statik Perbandingan pembekal bentuk statik Apr 16, 2025 am 11:20 AM

Mari kita cuba menyusun istilah di sini: "Penyedia Borang Statik." Anda membawa html anda

Bukti konsep untuk menjadikan sass lebih cepat Bukti konsep untuk menjadikan sass lebih cepat Apr 16, 2025 am 10:38 AM

Pada permulaan projek baru, kompilasi SASS berlaku dalam sekejap mata. Ini terasa hebat, terutamanya apabila ia dipasangkan dengan BrowserSync, yang dimuat semula

Berita Platform Mingguan: Atribut Memuat HTML, Spesifikasi ARIA Utama, dan Bergerak Dari IFRAME ke Shadow Dom Berita Platform Mingguan: Atribut Memuat HTML, Spesifikasi ARIA Utama, dan Bergerak Dari IFRAME ke Shadow Dom Apr 17, 2025 am 10:55 AM

Pada minggu ini, berita platform, Chrome memperkenalkan atribut baru untuk memuatkan, spesifikasi aksesibiliti untuk pemaju web, dan gerakan BBC

Perjanjian dengan elemen seksyen Perjanjian dengan elemen seksyen Apr 12, 2025 am 11:39 AM

Dua artikel diterbitkan pada hari yang sama:

Bagaimana kami menandakan font Google dan mencipta goofonts.com Bagaimana kami menandakan font Google dan mencipta goofonts.com Apr 12, 2025 pm 12:02 PM

Goofonts adalah projek sampingan yang ditandatangani oleh isteri pemaju dan suami pereka, kedua-duanya peminat besar tipografi. Kami telah menandakan Google

Beberapa tangan dengan elemen dialog HTML Beberapa tangan dengan elemen dialog HTML Apr 16, 2025 am 11:33 AM

Ini saya melihat elemen HTML untuk kali pertama. Saya telah menyedarinya untuk seketika, tetapi Haven &#039; t mengambilnya untuk putaran lagi. Ia mempunyai cukup keren dan

Slider Multi-Thumb: Kes Umum Slider Multi-Thumb: Kes Umum Apr 12, 2025 am 10:52 AM

Bahagian pertama siri dua bahagian ini terperinci bagaimana kita boleh mendapatkan slider dua thumb. Sekarang kita akan melihat kes multi-thumb umum, tetapi dengan yang berbeza dan

Di manakah 'Langgan Podcast' pautan ke? Di manakah 'Langgan Podcast' pautan ke? Apr 16, 2025 pm 12:04 PM

Untuk sementara waktu, iTunes adalah anjing besar dalam podcasting, jadi jika anda mengaitkan "Langgan Podcast" untuk suka:

See all articles