gpt4 book ai didi

javascript - 如何解决 ESLint 错误 "Prefer default export ..."?

转载 作者:行者123 更新时间:2023-12-03 00:31:12 29 4
gpt4 key购买 nike

我有以下模块,其中有一个命名函数...eslint (airbnb) 引发错误:

8:1 error Prefer default export import/prefer-default-export

我应该如何重组我的代码以满足此要求?

导出/导入应该位于代码的开头...

模块

import fetch from 'node-fetch';

const normalize = json => json.categories.map(category => ({
id: category.catId,
name: category.catName,
}));

export const getCategories = async () => {
const response = await fetch(
'http://mockbin.org/bin/0535d3fb-74f6-43a6-b4d4-461d84795be4',
{
method: 'GET',
headers: { accept: 'application/json' },
},
);

const json = await response.json();

return normalize(json);
};

最佳答案

总体思路是将命名导出更改为默认导出 - 使用的语法是 export default <something> 。默认导出未命名,因此您必须删除 getCategories :

export default async () => {

或者,如果您喜欢将函数放在一个有用命名的变量中,则必须提前定义该函数,然后将其导出:

const getCategories = async () => {
const response = await fetch(
'http://mockbin.org/bin/0535d3fb-74f6-43a6-b4d4-461d84795be4',
{
method: 'GET',
headers: { accept: 'application/json' },
},
);

const json = await response.json();

return normalize(json);
};
export default getCategories;

(尽管如果模块/文件名是 getCategories ,它可能应该是,我认为这不会很有用)

以上两种方法都通过 no-use-before-define规则也是如此。

关于javascript - 如何解决 ESLint 错误 "Prefer default export ..."?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53864198/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com