首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React InstantSearch Dropdown RefinementList不工作:应为字符串或类/函数(用于复合组件),但得到:未定义

React InstantSearch Dropdown RefinementList不工作:应为字符串或类/函数(用于复合组件),但得到:未定义
EN

Stack Overflow用户
提问于 2021-06-22 12:00:37
回答 1查看 67关注 0票数 1

我正在尝试使用this guide来创建一个下拉列表,而不是默认的。我首先创建了一个带有contents form hereDropdown.js

代码语言:javascript
复制
import React, { Component } from 'react';
import { connectRefinementList } from 'react-instantsearch/connectors';
import PropTypes from 'prop-types';

const cx = label => `ais-DropdownRefinementList-${label}`;
/// Rest of the code from the above link follows
export default connectRefinementList(DropdownRefinementList);

然后我将其导入到我的search.js组件中,该组件构建我的接口,如下所示:

代码语言:javascript
复制
import { DropdownRefinementList} from "./Dropdown"

像这样使用它:

代码语言:javascript
复制
<DropdownRefinementList attribute="major" />

这会给我以下错误:

代码语言:javascript
复制
×
Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.

Check the render method of `SearchGrid`.

SearchGrid只是我的搜索组件。当我删除<DropdownRefinementList attribute="major" />时,这个问题就消失了,所以这就是问题所在。

我的实现有什么问题吗?我该如何解决这个问题呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-22 12:45:15

应该是import DropdownRefinementList from "./Dropdown"

这是因为您要从Dropdown.js文件中导出default。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68077368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档