我为 Gatsby 创建了一个自定义组件。我只是想测试一些非常基本的功能。
import React from 'react'
import { graphql } from 'gatsby'
export default function Test() {
return <div>Hello World form Test()</div>
}
我将该组件作为一个包上传到 NPM,并尝试将其导入 Gatsby 站点。但是,我收到以下错误:
错误:元素类型无效:需要字符串(对于内置组件)或类/函数(对于复合组件),但得到:对象。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。
我正在导入组件,例如:
import Test from "gatsby-theme-thepighero"
这让我相信我即将解决,但我似乎无法以正确的方式导航到我的组件。该组件位于 /src/components 文件夹中名为 test.js 的文件中。
我还查看了此处发布的其他问题,例如Uncaught Error: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function but got: object without much lucky.
编辑:我已经根据下面的评论清理了这个问题。