混合默认和命名导入
Posted
技术标签:
【中文标题】混合默认和命名导入【英文标题】:Mixed up default and named imports 【发布时间】:2019-07-26 23:55:06 【问题描述】:我正在尝试将相机与 React Native 一起使用,但我的导入似乎搞砸了,我不知道为什么。 根据类似的帖子,似乎没有正确完成从相机的导出,但我不想修改 react-native-camera 源代码。
我试图同时导入
import Camera from 'react-native-camera';
和
import Camera from 'react-native-camera';
但我得到同样的错误:
Invariant Violation:Invariant Violation:元素类型无效:预期为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。
知道如何解决这个问题吗? 我仍然想使用 react-native-camera 库而不是编辑它。
感谢您的任何建议!
【问题讨论】:
您在哪里看到表明Camera
是react-native-camera
导出的组件的文档?我找不到此文档。
【参考方案1】:
export RNCamera, FaceDetector ;
这是来自 react-native-camera,它没有默认导出,所以你的两个导入都不起作用
也许你正在寻找
import RNCamera 'react-native-camera';
【讨论】:
如果你拼命将它命名为Camera
无论出于何种原因你都可以这样做:import RNCamera as Camera 'react-native-camera';
以上是关于混合默认和命名导入的主要内容,如果未能解决你的问题,请参考以下文章
React Redux Firebase - 您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入
next.js + expo:您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入