'single' 语法之前的预期'multiple' 语法

cou*_*011 4 eslint

我正在尝试导入这样的文件,但出现错误:“单个”语法之前的预期“多个”语法

import { Component, Prop, Vue } from 'vue-property-decorator';
import { getModule } from 'vuex-module-decorators';
import { ApiException, IProduct, IProductCategory } from '@/services'; // error here
import { INavs } from '@/types';
Run Code Online (Sandbox Code Playgroud)

规则配置:

'sort-imports': ['error', {
    'ignoreCase': false,
    'ignoreDeclarationSort': false,
    'ignoreMemberSort': false,
    'memberSyntaxSortOrder': ['none', 'all', 'multiple', 'single']
}]
Run Code Online (Sandbox Code Playgroud)

fre*_*erj 7

import { ApiException, IProduct, IProductCategory } from '@/services'; 正在进口多个(三个)出口。

双方import { getModule } from 'vuex-module-decorators';并import { INavs } from '@/types';只导入一个名为export。

如果您向上移动import { ApiException, IProduct, IProductCategory }一行,该错误就会消失,因此它位于单个导入之上。这是在您的设置中配置的,'memberSyntaxSortOrder': ['none', 'all', 'multiple', 'single']因为“多个”列在“单个”之前。

您可以在此处的 eslint 文档中阅读更多相关信息https://eslint.org/docs/rules/sort-imports

  • 这就是答案。而且,我不同意他们如何实现“single”。对我来说,任何使用解构的东西,无论是单个元素“import { INavs }”还是多个元素“import { Component, Prop, Vue }”,都应该被这条规则“视为”“多个”。这有助于将其与_proper_“单一”导入区分开来,例如“import React”。否则,无法区分“import React”和“import { Vue }”,因为它们都被视为“single”。 (2认同)