如何使用正确语法一次性导入ES6模块的默认与命名资源?
同时导入ES6默认导出与命名导出的正确语法
没问题,我来帮你搞清楚这个ES6模块导入的语法——针对你给出的导出场景,一次性同时导入默认资源和命名资源的写法很直观,我直接结合你的示例来演示:
首先先明确你的导出代码(方便对照):
export const defaultBrowser = 'Chrome'; export default [ { value: 0, label: defaultBrowser }, { value: 1, label: 'Firefox' }, { value: 2, label: 'Safari' }, { value: 3, label: 'Edge' }, ];
核心导入语法
你可以在同一条import语句里,先写默认导出的变量名(这个名字可以自定义,因为默认导出没有固定名称),然后用逗号分隔,再用大括号包裹需要导入的命名导出项(命名导出的名字必须和导出时一致,除非你用as重命名):
// 假设你的模块文件路径是 ./browsers.js import browserOptions, { defaultBrowser } from './browsers.js';
这样导入后:
browserOptions就是你默认导出的那个浏览器选项数组defaultBrowser就是你命名导出的常量'Chrome'
可选:重命名导入项
如果默认导出的名字你想自定义,或者命名导出的名字和当前作用域的变量冲突,还可以用as来重命名:
import myBrowserList, { defaultBrowser as primaryBrowser } from './browsers.js';
这里myBrowserList替代了browserOptions作为默认导出的引用名,primaryBrowser替代了原命名导出的defaultBrowser。
内容的提问来源于stack exchange,提问作者wscourge




