Cla*_*dio 4 javascript node.js ecmascript-6 eslint es6-modules
在 eslint 的首选解构规则的指导下,我定义了一些如下常量:
const {
NODE_ENV,
API_URL,
} = process.env;
Run Code Online (Sandbox Code Playgroud)
是否可以通过在语句前加上 前缀来导出这些常量export?
export const {
NODE_ENV,
API_URL,
} = process.env;
Run Code Online (Sandbox Code Playgroud)
这看起来很自然,但eslint-plugin-import抱怨违反了import/named规则:API_URL not found in '../constants'。事实上,相关MDN页面export上也没有描述这种用法。
那么我们是否必须在单独的export语句中重复所有常量?
const {
NODE_ENV,
API_URL,
} = process.env;
export {
NODE_ENV,
API_URL,
};
Run Code Online (Sandbox Code Playgroud)
是否可以通过在语句前加上 前缀来导出这些常量
export?Run Code Online (Sandbox Code Playgroud)export const { NODE_ENV, API_URL, } = process.env;
是的,根据规范,这是完全有效的。您可以在导出的声明中使用解构模式const。
这看起来很自然,但 eslint-plugin-import 抱怨违反了 import/named 规则:
API_URL not found in '../constants'。
听起来那个插件坏了。事实上,您的确切用例之前曾被报告为有效。