从php返回此html
PHP
$str = "Hello World";
echo json_encode("returnval"=>format_string($str));
function format_string($str){
return "<b>".$str."</b>";
}
React JSX
render () => {
//returnval = html string returned from php
return (
<div>
{returnval}
<div>
<span>Some data</span>
</div>
</div>
);
}
以上打印<b>Hello World</b>
为文本。
但我希望html标签执行(在这种情况下为粗体)
由于某些原因,我无法在jsx中编写format_string
函数吗?
答案 0 :(得分:1)
您可以使用dangerouslySetInnerHTML属性来呈现您的html字符串。
查看React doc(https://facebook.github.io/react/docs/dom-elements.html)了解更多详情。
答案 1 :(得分:0)
由于某些原因,我无法在jsx中编写format_string函数吗?
是的,你其实可以,但我认为你不确定如何;)
只需创建一个辅助函数,它将在 b 标记内返回文本 - 如果定义了内容。
class MyComponent extends Component {
...
render() {
{renderContent(content)}
...
}
}
const renderContent = (content) =>
content && <b>{contnet}</b>