React Router <Link>в пределах троичного оператора - PullRequest
0 голосов
/ 09 июня 2018

Я бы хотел, чтобы вы использовали следующий троичный оператор в React JSX:

<Table.Cell>{`${user.company !== null ?  <Link to={`/companies/${user.company._id}`}>`${user.company.name}`</Link> : '' }`}</Table.Cell>

Однако я получаю следующее значение: [объект объекта]

Когда я использую этот троичный оператор, значение отображается справа:

<Table.Cell>{`${user.company !== null ? `${user.company.name}` : '' }`}</Table.Cell>

И когда я использую этот код JSX без оператора Ternary, значение также верно:

<Table.Cell><Link to={`/companies/${ user.company._id}`}>{user.company.name_company}</Link></Table.Cell>

Однако я хотел бы использоватьусловный тег React Router Link для создания гиперссылки.У меня та же проблема с использованием других тегов HTML внутри оператора Ternary.

Что я делаю не так?

1 Ответ

0 голосов
/ 09 июня 2018

Ваш синтаксис неправильный.Вы должны переписать свой троичный чек в JSX следующим образом:

<Table.Cell>{ user.company !== null ?  <Link to={`/companies/${user.company._id}`}>{user.company.name}</Link> : null }</Table.Cell>

Или вы можете проверить его следующим образом:

<Table.Cell>{ user.company !== null && <Link to={`/companies/${user.company._id}`}>{user.company.name}</Link> || null }</Table.Cell>

Надеюсь, это поможет.

...