Поскольку вы используете React, нет причин использовать JS собственные методы DOM для манипуляций с DOM. Воспользуйтесь преимуществами синтаксиса response jsx.
Вот ваш пример, написанный как компонент, который загружает данные при инициализации компонента:
function EmailViewComponent() {
const [emails, setEmails] = useState([])
useEffect(() => {
const apiCall = fetch(`/emails/${mailbox}`)
.then(response => response.json())
.then(emails => {
setEmails(emails)
});
}, [])
return (
<div className="emails-view">
<div className="enc">
{emails.map(emailItem => (
<div className="email-container">
<div className="name">{emailItem.sender}</div>
<div className="subject">{emailItem.subject}</div>
<div className="timestamp">{emailItem.timestamp}</div>
</div>
))}
</div>
</div>
)
}
Таким образом вы сможете легче поддерживать приложения и
Что касается производительности, я не уверен, что быстрее, но я бы всегда go с удобством писал бы более чистый код в качестве компромисса.
Но я уверен, что Команда React уделяет внимание производительности.