CNode

Typescript引用第三方js库,自己写了声明文件,编译成功后运行代码报错 提示React组件为undefined

问答
Hhuangsav发布于9 年前最后回复9 年前6 回复6402 浏览0 收藏

error 如下: 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.

Check the render method of DealPicModal.

代码如下,AvatarEditor是第三方component: 图片.png

声明文件如下: 图片.png

原js code: 图片.png 图片.png 图片.png

麻烦大家帮忙看看,谢谢。

查看回复

回复 (6)

W
waitingsong#1·9 年前

声明文件有问题? 第二张图那两个interface是否应该添加 export

H
huangsav#2·9 年前
引用 waitingsong声明文件有问题? 第二张图那两个interface是否应该添加 export

@waitingsong 试过了,不行,我把改过之后的声明文件和js code结构贴出来了。不知道是不是声明哪里有问题。

H
huangsav#3·9 年前

有没有大佬帮忙看看

W
waitingsong#4·9 年前

可能是 export import name = ... 这种格式有问题

H
huangsav#5·9 年前
引用 waitingsong可能是 export import name = ... 这种格式有问题

@waitingsong 我换了一种写法,的确可以了,不过还是有bug,component某部分不显示,在调试中。 奇怪,我看有几个React的UI库的声明也是这样写的。。竟然不行。现在将class declare在namespace外面,直接export就能正常识别为一个react的component了。

W
waitingsong#6·9 年前

通常情况没必要使用 namespace

参与回复
登录后即可参与回复。登录