如何在同一组件中获取无状态组件名称
例如: HelloComponent.jsx
db.collection.distinct("key").forEach((num)=>{
var i = 0;
db.collection.find({key: num}).forEach((doc)=>{
if (i) db.collection.remove({key: num}, { justOne: true })
i++
})
});
在这里,我如何获得组件的名称?即VHelloComponent
答案 0 :(得分:1)
ES6实现了Function.name属性。在你的情况下,你可以做类似的事情。
VHelloComponent.name
const VHelloComponent = function(props) {
currentComponentName = VHelloComponent.name
return (<div>Hello React</div>);
}
export default(VHelloComponent);
答案 1 :(得分:1)
您可以执行VHelloComponent.name
,但请记住,如果您缩小代码.name
,则会返回该函数的缩小名称。如果你缩小你的代码并且你需要函数的实际人类可读名称,你可以为你的函数分配一个包含如下名称的属性:
const VHelloComponent = function(props) {
currentComponentName = VHelloComponent.myName
return (<div>Hello React</div>);
}
VHelloComponent.myName = "VHelloComponent";
export default VHelloComponent;
弦乐不会被缩小。