我找不到配置“eslint-plugin-import”规则的文档。
我想按class/interface/etc.. name的字母顺序对我的导入进行排序,而不考虑文件路径。
例如,在我的当前配置中,下面是我的导入如何按ESLint排序:
import React from 'react';
import './App.css';
import MenuIcon from '@mui/icons-material/Menu'; <---------------- Look at this line
import AppBar from '@mui/material/AppBar';
import Box from '@mui/material/Box';
import Button from '@mui/material/Button';
import IconButton from '@mui/material/IconButton';
import Toolbar from '@mui/material/Toolbar';
import Typography from '@mui/material/Typography';
import logo from './logo.svg';
下面是我使用的配置
"import/order": [
"error",
{
"groups": [
"builtin",
"external",
"internal"
],
"pathGroups": [
{
"pattern": "react",
"group": "external",
"position": "before"
}
],
"pathGroupsExcludedImportTypes": [
"react"
],
"newlines-between": "always",
"alphabetize": {
"order": "asc",
"caseInsensitive": true
}
}
],
我想这样分类:
import React from 'react';
import './App.css';
import AppBar from '@mui/material/AppBar';
import Box from '@mui/material/Box';
import Button from '@mui/material/Button';
import IconButton from '@mui/material/IconButton';
import MenuIcon from '@mui/icons-material/Menu'; <---------------- Look at this line
import Toolbar from '@mui/material/Toolbar';
import Typography from '@mui/material/Typography';
import logo from './logo.svg';
1条答案
按热度按时间cclgggtu1#
我有类似的问题,我也想排序,因为你在你的问题中提到。但目前看来,这是不可能的。
我用稍微不同的方法解决了这个问题。我把
@mui/material/
当作一个路径组,把@mui/icons-material
当作另一个路径组。使用以下配置
你会有这样的结果
请注意
@mui/icons-material/
和@mui/material/
之间的分隔(新行这是通过
pathGroups
中的设置来实现的。您可以为任何其他导入添加这些类型的模式,这些模式可能来自@mui
或任何其他来源。我知道这可能不是确切的解决方案,但它可能是最合适的,至少对我来说是:)。