接下来的 Js 错误:元素类型无效:需要一个字符串(对于内置组件)或一个类/函数(对于复合组件),但得到:未定义

2024-03-16

完整错误:错误:元素类型无效:需要一个字符串(对于内置组件)或一个类/函数(对于复合组件),但得到:未定义。您可能忘记从定义它的文件中导出组件,或者您可能混淆了默认导入和命名导入。

尝试将组件导入我的 Nextjs 页面,但出现上述错误。当我将组件中的所有代码放入页面时,它呈现得非常好,但是当我导入它时,出现错误。

这是主页代码:

export default function DealsList({data}){

    const { toggleColorMode } = useColorMode();

    return (<>
            <Button onClick={toggleColorMode}><SunIcon /></Button>
            <Box w={500} p={4} m="20px auto">
                <Heading as="h1" size="xl" textAlign="center">
                    Welcome to Stealz
                </Heading>
                <Heading as="h2" size="l" textAlign="center" m={5}>
                    Games on Sale
                </Heading>
                </Box>
                {data.map((deal) => (
                    <div key={deal.dealID}>
                        <Center>
                        <Box width="lg" 
                            borderWidth="1px"
                            _hover={{ bgGradient: "linear(to-r, gray.300, yellow.400, pink.200)" }}
                            mb="2" 
                            p={4}
                            rounded="lg" 
                            overflow="hidden"
                            shadow="1px 1px 3px rgba(0,0,0,0.3)"
                            >
                         
                        <Box
                            mt="1"
                            ml = "2"
                            mr = "2"
                            p={3}
                            fontWeight="semibold"
                            as="h4"
                            lineHeight="tight"
                            isTruncated
                            textAlign="center"
                            >
                            <Heading size="l">{deal.title}</Heading>
                        </Box>
                    
                        <Center><Image src={deal.thumb} alt={deal.title} /></Center>
                        <Center><Box p="6" textAlign="center">
                            <Box d="flex" alignItems="baseline">
                            <Badge borderRadius="full" px="2" colorScheme="teal">
                                Sale Price: ${deal.salePrice} 
                            </Badge>
                            <Box
                                color="gray.500"
                                fontWeight="semibold"
                                letterSpacing="wide"
                                fontSize="xs"
                                textTransform="uppercase"
                                ml="2"
                            >
                                &bull; Normal Price: ${deal.normalPrice}
                            </Box>
                            
                        </Box>
                        <LinkBoxModal />
                    </Box>
                    </Center>
                    </Box>
                    </Center>
                    </div>
                ))}
            </>  
        )
}

export async function getStaticProps(){
    try{
        const res = await axios.get('sadfasdfasdf')
        const data = res.data
        console.log(data)
        return { props: { data }}
    }
    catch(err){
        console.log(err)
    }
}

这是我尝试导入的组件:

export default function LinkBoxModal(){
    return (
        <Popover>
            <PopoverTrigger>
                <Button>Get it Now!</Button>
            </PopoverTrigger>
            <PopoverContent>
                <PopoverArrow />
                <PopoverCloseButton />
                <PopoverHeader>Link to Game:</PopoverHeader>
                <PopoverBody>[Insert Link]</PopoverBody>
            </PopoverContent>
        </Popover>
    )
}

不知道为什么这不能正确渲染。


我之前遇到过这个问题,对于我的情况,我在每个组件上导入了反应模块,它的工作就像魔术一样!

import React from 'react';
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

接下来的 Js 错误:元素类型无效:需要一个字符串(对于内置组件)或一个类/函数(对于复合组件),但得到:未定义 的相关文章

  • React JS - 单击时更改颜色并将默认颜色放在所有其他颜色上

    我有 x 个渲染数文章预览依赖于 API 调用的组件 div div Object keys images map index i gt return div div
  • 如何获取传单标记簇中点击事件的图块?

    这是我的代码 function onMapClick e e originalEvent defaultPrevented true var orig e originalEvent console log orig target map
  • JSON对象的长度[重复]

    这个问题在这里已经有答案了 该函数生成一个包含 json 对象的数组 var estoque function unpack estoque tnm total estoque vl id tid st tnm tnm split tota
  • 使用 javascript 禁用按钮:FF 与 IE

    我有一排按钮 它们都会创建一个我想在新选项卡中打开的 pdf 文件 这样按钮页面就会保持在顶部 并且 pdf 会打开以进行打印 为了防止单击按钮两次 我禁用该按钮 如下所示 我使用 python
  • 默认情况下嵌入带字幕的 Youtube 不起作用

    我正在尝试嵌入 Youtube 电影 并希望默认情况下打开字幕 From https developers google com youtube player parameters cc load policy https develope
  • 将上部字符转换为下部字符,将下部字符转换为上部字符(反之亦然)[重复]

    这个问题在这里已经有答案了 我需要将某些字符串中的所有较低字符转换为较高字符 并将所有较高字符转换为较低字符 例如 var testString heLLoWorld 应该 HEllOwORLD 转换后 在不保存临时字符串的情况下实现此目的
  • 嵌套辅助函数和性能

    嵌套辅助函数对于使代码更易于理解非常有用 谷歌甚至建议在他们的应用程序中使用嵌套函数时尚指南 https google styleguide googlecode com svn trunk javascriptguide xml Nest
  • 这种 JavaScript 编码风格有什么问题? (闭包与原型)

    我们一直在讨论如何最好地处理我们的 JS 应用程序中的对象 研究 Stoyan Stefanov 的书 阅读无数关于 新 这个 原型 闭包等的 SO 帖子 事实上有很多 而且它们有这么多相互竞争的理论 表明没有完全明显的答案 让我们假设我们
  • 如何创建自定义元素扩展类的新实例

    我正在尝试以下示例谷歌开发者网站 https developers google com web fundamentals getting started primers customelements extendhtml我收到错误 Typ
  • Angular 2 runOutsideAngular 仍然改变 UI

    从我的理解来看runOutsideAngular https angular io docs ts latest api core index NgZone class html runOutsideAngular anchor 如果我需要
  • Menu.Item 中的 Antd 自动换行

    可以在 Menu Item 组件中应用自动换行吗 示例不起作用
  • 为 Meteor 数据创建编号列表

    有没有办法获取 Meteor 集合中项目的编号列表的 编号 我知道我可以在 html 中做到这一点 但我觉得如果我可以在 spacebars 中放置一些东西 那么样式会更容易 如果我可以使用更好的术语 请告诉我 像这样的东西 前 20 部电
  • Javascript 中的线性回归 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在网络浏览器中用 Javascript 进行最小二乘拟合 目前 用户使用 HTML 文本输入输入数
  • React + Semantic-UI:在 UI MODAL 中使用表单

    在没有 React 的普通旧 Semantic UI 中 我已经能够毫无问题地将表单放入 Modal 中 使用 Semantic UI React 版本 我能够在模态中显示表单 但它并没有按照我期望的方式工作 例如 模态框显示后 模态框内的
  • socket.io 作为客户端

    有什么方法可以将socketio作为客户端运行 不是浏览器 而是nodejs脚本 我需要将数据从服务器广播到一些客户端 浏览器 和另一台linux机器 仅运行nodejs来获取变量 没有浏览器 欢迎任何想法 Regards github上有
  • 通过多个回调优雅地传递“点击事件”

    当未登录的用户单击给定的按钮时 我想停止该事件 收集他的 oauth 收集他的电子邮件 如果我没有 然后执行该事件 我想用 javascript 来做所有事情 因为这会让事情变得更加简单 这就是我执行它的方式 我有两个问题 有没有更优雅的方
  • Jquery 两个字段的时间差(以小时为单位)

    我的表单中有两个字段 用户可以在其中选择输入时间 start time end time 我想在更改这些字段时重新计算另一个字段的值 我想做的是获取两次之间的小时数 例如 如果我的开始时间为 5 30 结束时间为 7 50 我想将结果 2
  • 使用 javascript Array reduce() 方法有什么真正的好处吗?

    reduce 方法的大多数用例都可以使用 for 循环轻松重写 对 JSPerf 的测试表明 reduce 通常会慢 60 75 具体取决于每次迭代内执行的操作 除了能够以 函数式风格 编写代码之外 还有什么真正的理由使用reduce 吗
  • Nodejs 一个接一个地运行异步函数

    我是 JS nodejs 的新手 所以如果我不能提出切中要害的问题 请原谅我 所以基本上 如果我有两个异步函数 async function init async function main 如何确保在 init 完成其异步请求后调用 ma
  • 利用重力效果拖动元素

    我想完成类似于 photoshop com 和此网站的功能 http mrdoob com projects chromeexperiments google gravity http mrdoob com projects chromee

随机推荐

  • 在 Azure API 上托管 Flask(python) API

    团队 我一直在尝试在 Azure API 应用程序上托管 Flask API 但它不起作用 Azure API 应用程序正在运行 托管页面打开 Python 版本为 3 6 6 我无法托管简单的 hello world 项目 我收到的不同错
  • 在 C# SQLCLR 中更改静态只读变量是否安全?

    我在 C 6 0 NET 3 5 CLR 程序集中编写了一些代码 安全级别 external access 减少代码 public static readonly DataTable warnings table init warnings
  • 循环 Eclipse 代码模板中的字段

    您可以在代码模板中执行循环吗 例如我想打印类中的所有字段 有这样的模板吗 假设你正在谈论Java gt Editor gt Templates参考 可能已经过时 是here http help eclipse org help32 inde
  • 在 MySQL 中存储 html 的 100% 安全方法 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • PHP 同时使用客户端和服务器端验证,而不使用第 3 方代码

    编辑 感谢您的所有帮助 收到一封电子邮件 说我们不需要客户端 所以我放弃了这个想法 转而按时实际完成任务 在你问之前 是的 这是作业 不 我不是在寻找某人的完整代码 我是一个初学者 几乎没有 HTML PHP javascript 经验 但
  • 如何在android sqlite中显示blob数据的图像?

    我一直在尝试将 android sdcard 中的图像存储到 sqlite 数据库中 而且效果很好 图像作为 blob 存储到数据库中 这是我一直使用的粗略代码 Bitmap bitmap BitmapFactory decodeFile
  • 在 Fabric js 中缩放时保持描边宽度

    注 我已参考所以问题 https stackoverflow com questions 39548747 fabricjs how to scale object but keep the border stroke width fixe
  • 如何在 Phoenix 框架中有选择地禁用 CSRF 检查

    我正在尝试创建一个指向我的网站的 Facebook 页面选项卡 Facebook 向我网站的 url 发送 HTTP POST 请求 这里的问题是服务器有内置的 CSRF 检查 它返回以下错误 Plug CSRFProtection Inv
  • grails mongodb 连接被拒绝

    我的 grails 应用程序可以连接到本地 mongodb 并且工作正常 但是当我部署到 Cloud Foundry 时 尝试连接到 cf 上的 mongodb 时出现连接拒绝错误 我将 mongodb 服务绑定到我的应用程序 但它仍然无法
  • 使用Java中的过滤器验证用户名、密码(与数据库联系)

    下面是一段使用过滤器的 Java 代码 如果用户名和密码也正确 每次都会显示错误页面 请帮助我 我对这个概念不太了解 String sql select from reg where username user and pass pwd r
  • IE11 输入类型 = 数字

    我正在使用 Angular 4 3 我有一个带有输入类型号的输入字段 我试图限制用户输入任何字符 字母 但是 不完全支持输入类型数字 并且允许我在输入字段中输入 ABCDEFG 等字符 限制信件的最佳方法是什么
  • Android 服务正在运行,但在设置 -> 运行服务中未显示

    我的应用程序中有一项服务 其他一些应用程序也有 根据我的习惯 我可以在设置 gt 运行 服务中很好地看到 并杀死 服务 但是 不是我的 该服务本身是从 IntentService 扩展而来的 它通过 BroadcastReceiver 处理
  • shell脚本和CRON问题[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我为我们的本地开发服务器 运行 Ubuntu 服务器版本 9 10 编写了一个备份脚本 只是一个简单的脚本来 tar gzip 本
  • 如何保护代码中的敏感数据?

    我正在研究保护我的代码免遭反编译的方法 这里有几个很好的线程描述了混淆和代码打包作为保护代码的可能方法 然而 它们都不是理想的 当使用字符串方法 属性名称时 混淆不适用于反射 许多人根本不建议使用混淆 所以我目前决定不接受上述任何一项 Ho
  • 比较日期字段的年份和月份是否大于

    我要做这个查询 today datetime date today year today year month today month news News objects filter date year lt year date mont
  • 从验收测试触发输入操作?

    我的模板中有这个 input value model title focus out finishEditingTitle insert newline finishEditingTitle 该操作是异步的 我想测试用户完成编辑文本字段后
  • Emberjs - 如何等到模板完全渲染后再访问其子项

    有没有办法等到模板完全渲染后再通过视图访问其子级 例如使用 jquery didInsertElement 似乎没有按我的预期工作 在模板完全构建之前 我需要添加额外的半秒延迟 该模板迭代控制器中的数组并创建多个 div 即使我覆盖 did
  • Facebook API 的 require_login 与 CodeIgniter 配合使用

    目前 如果我使用 facebook 的 require login 它似乎会进入附加到 url 的无限循环 我的所有控制器都继承自 FB Controller 该控制器在构造时会执行以下操作 this gt facebook new Fac
  • 如何通过 GitHub 共享 NetLogo 模型

    这个非常有用的问题 和答案 https stackoverflow com questions 37817135 how to share a netlogo model online 37873761 comment67148764 37
  • 接下来的 Js 错误:元素类型无效:需要一个字符串(对于内置组件)或一个类/函数(对于复合组件),但得到:未定义

    完整错误 错误 元素类型无效 需要一个字符串 对于内置组件 或一个类 函数 对于复合组件 但得到 未定义 您可能忘记从定义它的文件中导出组件 或者您可能混淆了默认导入和命名导入 尝试将组件导入我的 Nextjs 页面 但出现上述错误 当我将