如何通过 props 将原始 HTML 内容呈现给 React 传递?

IT技术 javascript html reactjs
2021-05-26 09:07:15

我试图传递一个变量来回报一个组件。这是我的代码:

const Obj = (props) => {

    let { propId } = useParams();
    
    const [data, setData] = useState({ course: [] });

    useEffect(() => {
        (async () => {
            const result = await axios.get(
                'http://example.com/api/v1/' + propId
            ).catch(err => {
                console.error(err);
            });
            setData(result.data);
        })();
    }, [propId]);
    
    return (
        <Fragment key={propId}>
            <div>
                {data.htmlContent}
            </div>
        </Fragment>
    );
};

export default Obj;

在这里它显示了这一点:

<p>Lorem ipsum dolor sit amet</p>

如何将此 html 内容插入到主要内容中?

1个回答

试试dangerouslySetInnerHTML属性:

 <Fragment key={propId}>
            <div dangerouslySetInnerHTML={ { __html: data.htmlContent}} >
           
            </div>
        </Fragment>