I’m trying to add the sorting of import members such as this rule in sort-member.
However, since I’m already using eslint-plugin-import, there is a conflict because each of these rules is trying to sort imports based on different parameters:
sort-member
sorts following the order["none", "all", "multiple", "single"]
, depending on how many imports there is from one moduleeslint-plugin-import
sorts following the order["builtin", "external", "parent", "sibling", "index"]
, depending on the type of import
Is there a way to only use the member sort of sort-member
(== ignore the memberSyntaxSortOrder
rule), or is there a feature similar to memberSort built in eslint-plugin-import
?
All I’m trying to do is to have an error for:
import { b, a, c } from 'foo.js'
And have it automatically fixed to:
import { a, b, c } from 'foo.js'
Advertisement
Answer
I ended up finding the solution by myself: despite memberSyntaxSortOrder
being mandatory and only accepting an array, you can actually ignore this rule by simply using the ignoreDeclarationSort
rule, set to true
.
So to make sort/import
work with an alphabetical order of multiple import lines, simply add in your rule block:
'sort-imports': [ 'error', { ignoreDeclarationSort: true, }, ],