gpt4 book ai didi

javascript - 如何从 React 组件的 render 方法获取纯文本或将 JSX.Element 转换为字符串?

转载 作者:行者123 更新时间:2023-12-01 02:30:44 25 4
gpt4 key购买 nike

我想获取渲染方法的纯文本而不将其渲染到 DOM:

class Test from React.Component {

getPlainText = () => {
const plainText = /* some method */(this.renderParagraph())
console.log(plainText) // output in console: <p>I'm text from props of Text component!</p>
}

renderParagraph () {
return <p>{this.props.text}</p>
}

render () {
return <button onClick={this.getPlainText}>click me will print {this.props.text} in console</button>
}
}

我没有找到可能的 React 或 ReactDom API 来完成此要求。

最佳答案

我发现ReactDOMServer.renderToString提供了这个功能。

import ReactDOMServer from 'react-dom/server'

class Test from React.Component {

getPlainText = () => {
const plainText = ReactDOMServer.renderToString(this.renderParagraph())
console.log(plainText) // output in console: <p>I'm text from props of Text component!</p>
}

renderParagraph () {
return <p>{this.props.text}</p>
}

render () {
return <button onClick={this.getPlainText}>click me will print {this.props.text} in console</button>
}
}

关于javascript - 如何从 React 组件的 render 方法获取纯文本或将 JSX.Element 转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48333644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com