我有一个使用Next.js构建的React项目。我添加了React Simple Dropdown模块,我只是使用了作者提供的基本示例。一切正常。现在我想从模块中复制3个下拉文件并进行修改。所以我将src
文件复制到我的组件目录,并在我的代码中更改了我的行:
import Dropdown, { DropdownTrigger, DropdownContent } from 'react-simple-dropdown'
到:
import Dropdown, { DropdownTrigger, DropdownContent } from './Dropdown/Dropdown'
这导致此line不再有效:if (child.type === DropdownTrigger)
。
检查child.type
我发现差异(顶部是我的代码):
似乎我的Next.js webpack处理事物的方式不同于作者用来对原始代码进行babelify的任何工具。我能够以其他方式处理比赛,但想了解发生了什么。它似乎与一些默认导出有关,但我不清楚为什么事情会有所不同以及Babel设置处理这个问题。
答案 0 :(得分:1)
显然,在开发模式下使用React Hot Loader进行类比较doesn't work。目前没有修复的已知问题。因此,使用item.type.displayNane === 'DropdownTrigger'
将是一种解决方法。