2016-11-14 2 views
0

Я новичок в React и может быть мой вопрос будет звучать глупо ...Pass булево, чтобы ожидать реакции-элементных реквизита компонентов в материально-щ элемента списка

У меня есть компонент элемента списка материал-щ, и я хочу, чтобы значок редактирования был доступен только владельцу контента.

Например:

var rightAction = (this.props.canEdit)?<IconButton><NavigationClose /></IconButton>:false; 

    <ListItem 
     //properties... 
     rightIconButton={righAction} 
    /> 

Конечно, если вы спуститесь на содержание страницы не является владельцем, в его консоли, мы увидим эту ошибку:

Failed prop type: Invalid prop rightIconButton of type boolean supplied to ListItem , expected a single ReactElement.

вопрос:

Как мы можем передать или не перенести имущество в зависимости от условий?

Спасибо!

ответ

0

Если вы передадите undefined на опору, это эквивалентно тому, чтобы не передавать его вообще.

Так просто изменить ваше условное к:

var rightAction = this.props.canEdit ? <IconButton><NavigationClose /></IconButton> : undefined; 

Вы также могли бы сделать его проще для чтения (имхо), разбивая его:

var button = (<IconButton><NavigationClose /></IconButton>); 
var rightAction = this.props.canEdit ? button : undefined; 
Смежные вопросы