lodash 与 lodash/fp 的自定义 eslint 无限制导入
Custom eslint no-restricted-imports for lodash vs. lodash/fp
我正在尝试定义应从 fp 导入的某些 lodash 方法的列表。
此外,我试图禁止从 lodash 的顶级导入。
应该禁止从 lodash 中进行解构导入。
目标如下:
import _ from 'lodash'; // should show message "Import [module] from lodash/[module] instead"
import { isEqual } from 'lodash'; // should show message "Import [module] from lodash/[module] instead"
import isEmpty from 'lodash/isEqual'; // should pass
import set from 'lodash/set'; // should show message "Import [module] from lodash/fp/[module] instead"
eslintrc.json
"no-restricted-imports": [
"error",
{
"patterns": [
{
"group": ["lodash/set"],
"message": "Import [module] from lodash/fp/[module] instead"
},
{
"group": ["lodash", "!lodash/*"],
"message": "Import [module] from lodash/[module] instead"
}
]
}
],
这些是我一直在使用的flags/patterns。我尝试打开和关闭负匹配器,并切换组数组字符串的顺序和组本身。无法获得所需的 eslint 错误。
这个怎么样?
"no-restricted-imports": [
"error",
{
"paths": [
{
"name": "lodash",
"message": "Import [module] from lodash/[module] instead"
}
],
"patterns": [
{
"group": ["lodash/set"],
"message": "Import [module] from lodash/fp/[module] instead"
}
]
}
],
我正在尝试定义应从 fp 导入的某些 lodash 方法的列表。 此外,我试图禁止从 lodash 的顶级导入。 应该禁止从 lodash 中进行解构导入。
目标如下:
import _ from 'lodash'; // should show message "Import [module] from lodash/[module] instead"
import { isEqual } from 'lodash'; // should show message "Import [module] from lodash/[module] instead"
import isEmpty from 'lodash/isEqual'; // should pass
import set from 'lodash/set'; // should show message "Import [module] from lodash/fp/[module] instead"
eslintrc.json
"no-restricted-imports": [
"error",
{
"patterns": [
{
"group": ["lodash/set"],
"message": "Import [module] from lodash/fp/[module] instead"
},
{
"group": ["lodash", "!lodash/*"],
"message": "Import [module] from lodash/[module] instead"
}
]
}
],
这些是我一直在使用的flags/patterns。我尝试打开和关闭负匹配器,并切换组数组字符串的顺序和组本身。无法获得所需的 eslint 错误。
这个怎么样?
"no-restricted-imports": [
"error",
{
"paths": [
{
"name": "lodash",
"message": "Import [module] from lodash/[module] instead"
}
],
"patterns": [
{
"group": ["lodash/set"],
"message": "Import [module] from lodash/fp/[module] instead"
}
]
}
],