【发布时间】:2018-09-07 09:40:20
【问题描述】:
正在开发以create-react-app 身份开始的应用程序。
在我的代码中,我有多个命名导入,写法如下:
import {Banana, Apple} from 'fruits'
fruits模块是一个包含index.js的文件夹,其中包含export {Banana} from './banana'。./banana导出一个对象Banana = {bite: ()=>{}}。所以我希望
Foo是在banana中导出的对象。
现在,我正在尝试做类似的事情
const {bite} = Banana;
捆绑包构建成功,但是当我运行它时 - 它失败了,说它无法从 undefined 获取 bite。
对我来说真正奇怪的是——它以前没有发生过,但后来它才开始发生,没有特别的原因。但有时 Jest 也会发生这种情况 - 它无法从 undefined 导入 bite。
我现在只是在做
import {Banana} from 'fruits/banana';
import {Apple} from 'fruits/apple';
这样就可以正常工作了。但是,我希望它是
import {Banana, Apple} from 'fruits';
const {bite} = Banana;
有什么可能导致这种情况的想法吗?
我应该怎么做才能使代码保持我想要的方式(见上文)?
【问题讨论】:
-
你出口香蕉吗?
-
@IgorAlemasow,我愿意。如果我直接从“fruits/banana”导入香蕉,它就可以了。或者如果我直接使用
Banana.bite而不是const bite = {Banana} -
一切看起来都很好,这里是完整的工作示例codesandbox.io/s/7wvvvo88kx。你能用你的代码优化一下吗,也许你的代码有拼写错误?
标签: javascript webpack babeljs create-react-app