You*_*Dad 19 javascript compilation reactjs
我在控制台中收到警告:“在导出为模块默认导入/无匿名默认导出之前将对象分配给变量。”
这是来自我的 .js 函数,它默认导出几个函数。我不知道如何摆脱,同时仍然能够默认导出几个函数并保持代码简单,如下所示。
function init() {}
function log(error) {
console.error(error);
}
export default {
init,
log,
};
Run Code Online (Sandbox Code Playgroud)
我可以将文件写为:
export default function init() {}
export function log(error) {
console.error(error);
}
Run Code Online (Sandbox Code Playgroud)
是否有我需要更改的设置,我可以做些什么?
Cer*_*nce 30
它告诉您在导出之前为要导出的对象指定一个名称,以使所使用的名称更有可能在整个代码库中保持一致。例如,更改为:
function init() {}
function log(error) {
console.error(error);
}
const logger = {
init,
log,
};
export default logger;
Run Code Online (Sandbox Code Playgroud)
(给它在上下文中最有意义的任何名称 -logger只是一个例子)
但是如果你要导出多个东西,使用命名导出会更有意义 IMO。另一种选择是:
export function init() {}
export function log(error) {
console.error(error);
}
Run Code Online (Sandbox Code Playgroud)
然后将它们导入为:
import { init, log } from './foo.js';
Run Code Online (Sandbox Code Playgroud)