#reactjs
#reactjs
Вопрос:
В react
я пытаюсь отобразить ссылку, если она существует, как эта…
{link
? <a href={link}>
:
}
<h2>Link Content </h2>
{link
? </a>
:
}
Но когда я пытаюсь его собрать, я получаю сообщение…
Unexpected token ? </a>
Кто-нибудь знает, где я ошибаюсь?
Комментарии:
1. Попробуйте ссылку amp;amp; <a href={link}> или ссылку? <a href={link}>: null
Ответ №1:
Если вы используете троичный, вам нужно иметь что-то справа от :
возвращаемого, когда ваш случай false
. Более простым способом было бы использовать amp;amp;
в этой ситуации —
{link amp;amp; <a href={link}>}
<h2>Link Content </h2>
{link amp;amp; </a>}
Который обернет ваш h2
a
тег только тогда, когда ссылка существует.
Если вы действительно хотите использовать троичный, вы можете сделать следующее:
{link ? (
<a href={link}>
<h2>Link Content</h2>
</a>
) : <h2>Link Content</h2>}
Ответ №2:
Потому что ваш синтаксис неправильный.Пример:
render () {
return (
<div className="row">
{ //Check if message failed
(this.state.message === 'failed')
? <div> Something went wrong </div>
: <div> Everything in the world is fine </div>
}
</div>
);
}