我是React的新手,如果孩子有null,li数据通过props传递,我想隐藏父div
import React from 'react';
const PublicationTags = (props) => {
return (
<div className="publication-tags">
<h4>Темы публикации</h4>
<ul>
{props.data &&
props.data.tag_names &&
props.data.tag_names.map((tag_name, key) => (
<li key={key}>
<a href="/">{tag_name}</a>
</li>
))}
</ul>
</div>
);
};
export default PublicationTags;
如果没有关于li项的数据,我想隐藏和标签。
答案 0 :(得分:0)
<ParentDiv style={this.props.data===null ? {display:'none'}:{display:'flex'}>{this.props.data}</ParentDiv>
希望这会有所帮助。
答案 1 :(得分:0)
取决于应用程序的整体结构,但您可以执行以下操作:
import React from 'react';
const PublicationTags = props => {
if (!props.data.length) {
return null;
}
return (
<div className="publication-tags">
<h4>Темы публикации</h4>
<ul>
{props.data &&
props.data.tag_names &&
props.data.tag_names.map((tag_name, key) => (
<li key={key}>
<a href="/">{tag_name}</a>
</li>
))}
</ul>
</div>
);
};
export default PublicationTags;
或:
import React from 'react';
const PublicationTags = props => {
return props.data.length ? (
<div className="publication-tags">
<h4>Темы публикации</h4>
<ul>
{props.data &&
props.data.tag_names &&
props.data.tag_names.map((tag_name, key) => (
<li key={key}>
<a href="/">{tag_name}</a>
</li>
))}
</ul>
</div>
) : null;
};
export default PublicationTags;