你如何从 React 组件中获取标签
How do you get the Tag from a React Component
不是 HTML DOM 元素标签,JSX 标签,react class 名称。
我正在制作一个编辑器,当我向 canvas 项数组添加内容时,我需要检查它是什么,然后调用正确的方法。
这是一个伪代码:
changeSelectedItem( nodes ){
console.log(nodes)
console.log(nodes[0])
console.log(nodes[0].nodeName)
switch(nodes[0] react component name){
case text:
selectText
case image:
selectimage
case shape:
selectShape
}
这是我添加到项目数组的新组件的示例
在这种情况下,我想从 let new_image 获取 KonvaImage(我的自定义反应 class 名称),但我不知道如何。
解决您的问题的最佳方法是将形状或您的状态更改为如下所示:
[
{
type: 'KonvaImage',
item: <KonvaImage image={image}/>
},
{
type: 'Text',
item: '....'
},
...
]
然后你这样做:
switch(nodes.type) {
case 'Text':
...
case 'KonvaImage':
...
etc...
}
不是 HTML DOM 元素标签,JSX 标签,react class 名称。
我正在制作一个编辑器,当我向 canvas 项数组添加内容时,我需要检查它是什么,然后调用正确的方法。
这是一个伪代码:
changeSelectedItem( nodes ){
console.log(nodes)
console.log(nodes[0])
console.log(nodes[0].nodeName)
switch(nodes[0] react component name){
case text:
selectText
case image:
selectimage
case shape:
selectShape
}
这是我添加到项目数组的新组件的示例
在这种情况下,我想从 let new_image 获取 KonvaImage(我的自定义反应 class 名称),但我不知道如何。
解决您的问题的最佳方法是将形状或您的状态更改为如下所示:
[
{
type: 'KonvaImage',
item: <KonvaImage image={image}/>
},
{
type: 'Text',
item: '....'
},
...
]
然后你这样做:
switch(nodes.type) {
case 'Text':
...
case 'KonvaImage':
...
etc...
}