javascript - 如何在语义-ui反应的下拉文本字段中添加新行?
问题描述
这是渲染功能
render(){
const { members, user } = this.props;
let memberOptions = [];
members.forEach((member, i) => {
memberOptions.push({
key: i,
text: member.user.name,
value: member.user.id,
image: { avatar: true, src: member.user.gravatar },
});
});
return (
<Dropdown placeholder='Select User' fluid selection options={memberOptions} />
)
}
这将完美呈现。但我还想在这个文本字段的新行中再添加一个文本(比如电子邮件) 。因此下拉项目显示类似于:https ://react.semantic-ui.com/elements/list#list-example-relaxed
我怎样才能做到这一点?
解决方案
Akhila,我建议您使用该content
道具而不是您从阵列中渲染的text
道具。该道具特别需要一个字符串。prop将接受任何东西,包括其他 React 组件或节点。因此,您可以对内容执行类似这样的操作,而不是作为字符串返回,也许可以作为组件上的单独类方法:Dropdown.Item
memberOptions
text
content
text
const renderItemContent = (member) => {
const {
email,
name,
} = member.user;
const emailStyle = {
color : '#333',
fontSize : '.875em',
}
return(
<React.Fragment>
{name}
{email &&
<div style={emailStyle}>{email}</div>
}
</React.Fragment>
)
}
然后设置content: this.renderItemContent(member)
您的 memberOptionsArray。
推荐阅读
- php - Php Ratchet — 如何跟踪连接中断?
- coq - 任何人都可以帮助我如何在 coq 中证明这个 therom
- c# - 问题 RestSharp - StatusCode:InternalServerError
- javascript - 让 Xdebug 忽略多个请求
- ios - 如何在 Flutter for IOS 中初始化 Firebase
- apache-zookeeper - 配置无效,从 Kafka 启动 zookeper 时异常退出
- r - 删除 R 中只有一个人的组
- javascript - Sequelize 从某个嵌套级别返回空模型
- node.js - 编译错误 sequelize-typescript 但适用于 nodemon
- karate - 无法匹配在对象数组的索引中不匹配的相同 json(空手道)