Next.js 中 babelification 后的对象相等问题
Object equality issue after babelification in Next.js
我有一个使用 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 处理事情的方式似乎与作者用来对原始代码进行 babel 化的任何工具都不同。我能够以其他方式处理比赛,但想了解正在发生的事情。它似乎相关,所以一些默认导出,但我不清楚为什么事情不同以及 Babel 设置处理这个。
显然 class 与开发模式下的 React Hot Loader 进行比较 doesn't work。目前没有修复的已知问题。所以使用 item.type.displayNane === 'DropdownTrigger'
将是一种解决方法。
我有一个使用 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 处理事情的方式似乎与作者用来对原始代码进行 babel 化的任何工具都不同。我能够以其他方式处理比赛,但想了解正在发生的事情。它似乎相关,所以一些默认导出,但我不清楚为什么事情不同以及 Babel 设置处理这个。
显然 class 与开发模式下的 React Hot Loader 进行比较 doesn't work。目前没有修复的已知问题。所以使用 item.type.displayNane === 'DropdownTrigger'
将是一种解决方法。