Sử dụng rule no-restricted-imports
Ví dụ chúng ta nghiêm cấm import moment.js, một thư viện khiến cục bundle của chúng ta phình to. Nếu được các bạn nên cân nhắc sử dụng date-fns hoặc Luxon
{
"rules": {
"no-restricted-imports": ["error", {
"paths": [{
"name": "moment",
"message": "Sử dụng date-fns hoặc Luxon đi cưng à"
}]
}]
}
}
Khi bọn nó cố ý import sẽ nhận được cảnh báo
import moment from 'moment';
Ví dụ khác, chặn ko cho import lodash, khuyến cáo dùng lodash-es
{
"rules": {
"no-restricted-imports": ["error", {
"name": "lodash",
"message": "Use lodash-es instead!",
}],
}
}
Có thể dùng message mặc định, truyền vào một mảng các thư viện bị cấm
{
"rules": {
"no-restricted-imports": ["error", "underscore", "bluebird"]
}
}
Trong trường hợp phức tạp hơn, chúng ta có thể chặn tất cả những module nào khớp với pattern legacy/*
, kiểu như import helpers from 'legacy/helpers'
là cấm
{
"rules": {
"no-restricted-imports": ["error", {
"patterns": ["legacy/*"]
}],
}
}
Initializing...