为了账号安全,请及时绑定邮箱和手机立即绑定

如何在ReactJS中将JSX元素设置为没有返回的变量?

如何在ReactJS中将JSX元素设置为没有返回的变量?

慕斯709654 2024-01-18 16:37:55
我正在尝试分配一个变量,该变量将成为 ReactJS 中的 JSX 元素。我想这样做:const [useResultText, setResultText] = useState('');const changeState = () => {    const br = <br />    setResultText('Hello' + br + 'world');}return (    <div onClick={changeState}>{useResultText}</div>);有什么办法吗?
查看完整描述

2 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

这很好用,因为 JSX 只表示某些类型的 JavaScript 对象。但是你必须正确定义它:


const [useResultText, setResultText] = useState('');

const changeState = () => {

    const br = <br />

    setResultText(<React.Fragment>Hello{br}world</React.Fragment>);

}


return (

    <div onClick={changeState}>{useResultText}</div>

);

您可能更喜欢 or 标记之类的东西,而不是片段,具体取决于您想要什么。pspan


查看完整回答
反对 回复 2024-01-18
?
白衣非少年

TA贡献1155条经验 获得超0个赞

你快到了。只需将状态设置为一个元素:


import React from "react";

import "./styles.css";


export default function App() {

  const Elem = () => <div>Some stuff</div>;

  const [useResultText, setResultText] = React.useState(Elem);

  const changeState = () => {

    const br = <br />;

    setResultText(<div>Hello {br} World</div>);

  };


  return (

    <div className="App">

      <div onClick={changeState}>{useResultText}</div>

    </div>

  );

}

CS:https://codesandbox.io/s/vibrant-wind-0il8p?file=/src/App.js


查看完整回答
反对 回复 2024-01-18
  • 2 回答
  • 0 关注
  • 26 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信