为什么这个 es6-module 导出不是 working/recognized?
Why this es6-module export is not working/recognized?
我对模块 import/export 语法很生气...
在文件上说我想导入这样的模块:
import { AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
现在,我应该如何从 accordion-menu 导出?我当前的代码是这样的老式 js class:
AccordionMenu = function(options){
[...]
}
AccordionMenu.prototype = { ... }
然后我是这样导出的:
export { AccordionMenu as default };
没用。编译器说
导出 'AccordionMenu'(导入为 'AccordionMenu')在“../node_modules/lr-js-modules/accordion-menu”中未找到(可能的导出:默认)
然后我尝试了几种变体,但 none 对我有用。据我所知,根据 mdn 文档,所有变体都应该有效,但很明显我做错了什么。
你能帮忙吗?
错误消息非常清楚:您导出 default
但您的导入尝试访问导出 AccordionMenu
。
你应该使用其中之一
export function AccordionMenu(options) { … }
// same as:
// function AccordionMenu(options) { … }
// export { AccordionMenu as AccordionMenu }
AccordionMenu.prototype = { … };
和
import { AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
// same as:
// import { AccordionMenu as AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
或,如果该函数是该模块的唯一(或主要)导出,则使用默认导出
export default function AccordionMenu(options) { … }
// same as:
// function AccordionMenu(options) { … }
// export { AccordionMenu as default }
AccordionMenu.prototype = { … };
和
import AccordionMenu from '../node_modules/lr-js-modules/accordion-menu';
// same as:
// import { default as AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
但是混合不起作用。
我对模块 import/export 语法很生气...
在文件上说我想导入这样的模块:
import { AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
现在,我应该如何从 accordion-menu 导出?我当前的代码是这样的老式 js class:
AccordionMenu = function(options){
[...]
}
AccordionMenu.prototype = { ... }
然后我是这样导出的:
export { AccordionMenu as default };
没用。编译器说
导出 'AccordionMenu'(导入为 'AccordionMenu')在“../node_modules/lr-js-modules/accordion-menu”中未找到(可能的导出:默认)
然后我尝试了几种变体,但 none 对我有用。据我所知,根据 mdn 文档,所有变体都应该有效,但很明显我做错了什么。
你能帮忙吗?
错误消息非常清楚:您导出 default
但您的导入尝试访问导出 AccordionMenu
。
你应该使用其中之一
export function AccordionMenu(options) { … }
// same as:
// function AccordionMenu(options) { … }
// export { AccordionMenu as AccordionMenu }
AccordionMenu.prototype = { … };
和
import { AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
// same as:
// import { AccordionMenu as AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
或,如果该函数是该模块的唯一(或主要)导出,则使用默认导出
export default function AccordionMenu(options) { … }
// same as:
// function AccordionMenu(options) { … }
// export { AccordionMenu as default }
AccordionMenu.prototype = { … };
和
import AccordionMenu from '../node_modules/lr-js-modules/accordion-menu';
// same as:
// import { default as AccordionMenu } from '../node_modules/lr-js-modules/accordion-menu';
但是混合不起作用。