【发布时间】:2021-12-02 04:02:42
【问题描述】:
大家好,当列表增长到一定大小时,我正在尝试删除无序列表中最后一项的边框。我最初的想法是这样的:
document.querySelector('.employee-list-item:last-child').style.border = "none";
但是,React 说它不能将样式属性设置为“null”。它是否试图在渲染之前定位元素?有什么解决方法吗?
这是我的代码:
import "../css/Employee.css";
import Avatar from "./Avatar";
import React from "react";
const Employee = (props) => {
// capitalize first letter of firstName and first letter of lastName
const name = props.name
.split(" ")
.map((i) => i[0].toUpperCase() + i.slice(1))
.join(" ");
const { title } = props;
return (
<li className="employee-list-item">
<Avatar name={props.name} />
<span className={"employee-name"}>{name}</span>
<span className={"employee-title"}>{title}</span>
</li>
);
};
export default Employee;
【问题讨论】:
-
你编辑你的css,将样式添加到最后一项,.employee-list-item:last-child { YOUR STYLE }
-
满足条件时有没有办法做到这一点?例如,如果列表增长到一定大小,我想删除边框,但我不想每次都删除边框。
-
当列表具有您想要的条件时,您可以向您的 li 标签添加一个类 className="employee-list-item {yourCondition ?'Class' :''}"
标签: javascript reactjs