1 số tool webpack hay ho bạn có thể sử dụng được trong dự án

Tram Ho

Giới thiệu

Từ khóa webpack chắc không còn xa lạ với mọi người nữa, sức mạnh của nó đã được thể hiện rõ ràng qua số dự án đang chạy hay số sao (hiện tại đang là 56,8k lượt vote trên github, đó là chỉ là core của nó mà thôi). Khi nó đến webpack sẽ có 2 thành phần lớn tạo nên sức mạnh cho nó là loaderpluin của nó, hôm nay mình xin giới thiệu 1 số plugin mà mới tìm hiểu và cảm thấy hay ho, đang muốn thử áp dụng vào dự án.

Một số plugin:

1> moment-locales-webpack-plugin:

Trang chủ: https://github.com/iamakulov/moment-locales-webpack-plugin

  • Giới thiệu: Khi chúng ta sử dụng momentjs để format liên quan đến thời gian thường phải import 1 vài localization mà thôi. Tuy nhiên, khi dùng momentjs ta thường được tặng kèm rất nhiều ngôn ngữ khác nhau => chính điều này tạo ra sự dư thừa và gây nặng cho ứng dụng. Plugin này sinh ra để giảm bớt đi 1 số localization không cần thiết

  • Cài đặt:

npm install --save-dev moment-locales-webpack-plugin

  • Sử dụng:

Như ở đoạn code trên cách sử dụng rât đơn giản: bạn import plugin và sử dụng thuộc tính localesToKeep để giữ lại các ngôn ngữ bạn cần dùng. Bạn cần chú ý: tiếng anh là ngôn ngữ mặc định nên không thể loại bỏ được

  • Kết quả:

Bạn có thể loại bỏ được các ngôn ngữ không cần dùng của moment (khoảng 75% dung lượng file của moment là do support các ngôn ngữ khác nhau)
Tuy momentjs đang được thay thế bằng các thư viên khác như (DateFns, DateJs, Luxon,.. ) nhưng nếu dự án bạn đang dùng momnent thì có thể thử dùng thèn này

2> webpack-pwa-manifest:

Trang chủ: https://github.com/arthurbergmz/webpack-pwa-manifest

  • Giới thiệu: Khi chúng ta đang dùng tự động sinh ra file manifest.json (dùng trong Progressive Web Application)

  • Cài đặt:

npm install --save-dev webpack-pwa-manifest

  • Sử dụng:

  • Kết quả
    Ta sinh ra 1 file manifest.json tự động tự động sinh ra và inject, với hỗ trợ icon resizing and fingerprinting

3> filemanager-webpack-plugin:

**Trang chủ **: https://github.com/gregnb/filemanager-webpack-plugin
Giới thiệu
Cái tên của nó nói lên tất cả, nó là 1 Plugin dạng quản lý file cho phép bạn copy, nén (zip, tar, tar.gz), di chuyển hay delete file và thư mục trước hoặc sau khi build
(Mình giới thiệu để các bạn dùng thử 1 plugin tổng hợp những gì bạn cần, nếu các bạn cần 1 chức năng tương tự bạn có thể dùng các plugin copy-webpack-plugin hoặc remove-files-webpack-plugin ,…)

  • Cài đặt:

  • Sử dụng:

4>webpack-build-notifier:

Trang chủ: https://github.com/roccoc/webpack-build-notifier

  • Giới thiệu:
    Mỗi khi bạn build với webpack, bạn muốn khi thành công hoặc thất bại sẽ có 1 thông báo nhỏ nhỏ để bạn quan sát và kịp sửa sai nếu có lỗi thì đây quả là 1 plugin mà bạn cần


(hình ảnh khi chưa cấu hình plugin)

  • Cài đặt:

  • Sử dụng:

Ngoài ra bạn có thể cấu hình thêm thời gian hiển thị với showDuration, hay các icon successIcon warningIconfailureIcon compileIcon , âm thanh , hay các sự kiện khác.

  • kết quả:
    Build thành công hay thất bại đều có thông báo và âm thanh nhẹ nhàng

Chống chỉ định dùng plugin cho bạn nào không thích đọc thông bá[email protected]@

5> Một số plugin khác bạn có thể thử tìm hiểu:

Kết luận:

Qua phần giới thiệu của mình, hy vọng bạn có thể có hứng thú hơn với webpack và áp dụng được 1 nào đó mình đã giới thiệu.

Cảm ơn bạn đã đọc qua bài viết của mình.

Tham khảo: https://webpack.js.org/

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo