ReactJS条件呈现- else if不起作用

h43kikqp  于 2023-03-08  发布在  React
关注(0)|答案(2)|浏览(133)

我正处于学习JS和React的阶段,我不知道为什么if在下面的代码中不起作用。有人能帮助我吗?

function Item({ name, isPacked }) {
  if (isPacked) {
    return (
      <li className="item">
        {name} {isPacked && " ✔"}
      </li>
    );
  } else if (!isPacked) {
    return (
      <li className="item">
        {name} {isPacked && " ❌"}
      </li>
    );
  }
}

export default function PackingList() {
  return (
    <section>
      <h1>Sally Ride's Packing List</h1>
      <ul>
        <Item isPacked={true} name="Space suit" />
        <Item isPacked={true} name="Helmet with a golden leaf" />
        <Item isPacked={false} name="Photo of Tam" />
      </ul>
    </section>
  );
}
osh3o9ms

osh3o9ms1#

试着这样做:

function Item({ name, isPacked }) {
    return (
        <li className="item">
            {name} {isPacked ? '✔' : '❌'}
        </li>
    );
}
cvxl0en2

cvxl0en22#

您实际测试了isPacked是true还是false,因此请尝试以下代码:

function Item({ name, isPacked }) {
    return (
      <li className="item">
        {name}  {isPacked ? "✔" : "❌" }
      </li>
    );
}

{已打包?“✔”:“”}所以这行代码等于:

if(isPacked == true){
      return "✔";
    }else{
      return "❌";
    }

您可以在这里获得一些有用的示例https://reactjs.org/docs/conditional-rendering.html

相关问题