首页 > 解决方案 > 问题从 ReactJS 中的组件返回字符串

问题描述

我在 ReactJS 中有一个组件,我想调用它只返回一个字符串。如果我在组件本身内,我可以控制返回对象的值并且它确实返回一个字符串,但是当我控制组件时它返回一个对象

页面内容

render(){
<Portrait displayFromAPIID={content.Author._id} returnNameOnly={true}></Portrait>
}

这会在 HTML 中呈现正确的输出,但我想在元标记中使用输出,所以我只想要字符串本身,而不是 JSX;

零件

getNameOnly() {
        let staffMembers = this.selectStaffMembers();
        console.log(Object.values(staffMembers)[2])
        return Object.values(staffMembers)[2];
    }
render() {
        const name = this.getNameOnly();
        if(this.state.returnNameOnly === true){
            return name
        }
    }

我想使用这个组件,因为它存储了我们所有的用户值,但我似乎无法将内容传递给另一个组件,因为它只是将其识别为一个组件。仅供参考,我只是让这个组件返回很多不同的东西,所以我不想整体改变组件,只是希望这个特定返回的输出只是一个字符串

<meta name="author" content="[object Object]" data-react-helmet="true">

有谁知道我做错了什么?

标签: reactjscomponentsjsx

解决方案


我不知道我是否理解你的问题,但组件的输出总是会是一个 React 元素。如果您需要从中提取一些数据,也许您可​​以创建一个静态方法来提取它。但老实说,似乎您可能需要将这些数据存储在其他地方。


推荐阅读