将 Avatar(用户个人资料照片)添加到 Semantic UI React 的 Dropdown
Add Avatar (user profile photo) to Semantic UI React's Dropdown
作为一个业余项目,我写了一个小应用程序,对于主题和布局,我使用了 React-Bootsrap。现在我正在尝试学习语义 UI React & 我不知道如何将用户个人资料照片添加到下拉列表中(最初是从 Github's dropdown 得到的)
这是 how it looks right now 在我的应用程序中使用 React Bootstrap
反应 Bootstrap 代码:
<NavDropdown
alignRight
title={<StyledUserIMG src={user.photoURL} alt='userPhoto' />}
>
<NavDropdown.ItemText>
Signed in as <b>{user.displayName}</b>
</NavDropdown.ItemText>
<NavDropdown.Item onClick={async () => await signOut()}>
<b>Sign Out </b>
<i className='fas fa-sign-out-alt'></i>
</NavDropdown.Item>
</NavDropdown>
语义UI代码(我目前拥有的):
<Dropdown item>
<Dropdown.Item>
Signed in as <b>{user.displayName}</b>
</Dropdown.Item>
<Dropdown.Item onClick={async () => await signOut()}>
<b>Sign Out </b> <i className='fas fa-sign-out-alt'></i>
</Dropdown.Item>
</Dropdown>
在此先感谢您,祝您一切顺利。
import React from 'react'
import { Dropdown } from 'semantic-ui-react'
const friendOptions = [
{
key: 'Jenny Hess',
text: 'Jenny Hess',
value: 'Jenny Hess',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/jenny.jpg' },
},
{
key: 'Elliot Fu',
text: 'Elliot Fu',
value: 'Elliot Fu',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/elliot.jpg' },
},
{
key: 'Stevie Feliciano',
text: 'Stevie Feliciano',
value: 'Stevie Feliciano',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/stevie.jpg' },
},
{
key: 'Christian',
text: 'Christian',
value: 'Christian',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/christian.jpg' },
},
]
const DropdownExampleInline = () => (
<span>
Show me posts by{' '}
<Dropdown
inline
options={friendOptions}
defaultValue={friendOptions[0].value}
/>
</span>
)
export default DropdownExampleInline
您可以将组件传递给 Dropdown 文本属性。
将图像作为组件传递给 'text' 属性。
const DropdownExampleDropdown = () => (
<Dropdown
text={<span><Image avatar src={'https://react.semantic-ui.com/logo.png'} /></span>}
options={optionsList}
/>
)
export default DropdownExampleDropdown
这与 Alex Court 建议的原理相同,只是不会抛出预期的文本错误。
发现于:
https://react.semantic-ui.com/modules/dropdown/#usage-trigger
import React from 'react'
import { Dropdown, Image } from 'semantic-ui-react'
export const DropdownMenu = () => (
const trigger = <Image avatar src={user.photoURL} />;
const options = [
{
key: 'user',
text: (
<span>
Signed in as <strong>{user.displayName}</strong>
</span>
),
disabled: true,
},
{
key: 'settings',
text: 'Settings',
icon: 'setting',
},
{
key: 'signOut',
text: 'Sign Out',
icon: 'sign out alternate',
},
];
return (
<Dropdown trigger={trigger} options={options} />
)
}
作为一个业余项目,我写了一个小应用程序,对于主题和布局,我使用了 React-Bootsrap。现在我正在尝试学习语义 UI React & 我不知道如何将用户个人资料照片添加到下拉列表中(最初是从 Github's dropdown 得到的)
这是 how it looks right now 在我的应用程序中使用 React Bootstrap
反应 Bootstrap 代码:
<NavDropdown
alignRight
title={<StyledUserIMG src={user.photoURL} alt='userPhoto' />}
>
<NavDropdown.ItemText>
Signed in as <b>{user.displayName}</b>
</NavDropdown.ItemText>
<NavDropdown.Item onClick={async () => await signOut()}>
<b>Sign Out </b>
<i className='fas fa-sign-out-alt'></i>
</NavDropdown.Item>
</NavDropdown>
语义UI代码(我目前拥有的):
<Dropdown item>
<Dropdown.Item>
Signed in as <b>{user.displayName}</b>
</Dropdown.Item>
<Dropdown.Item onClick={async () => await signOut()}>
<b>Sign Out </b> <i className='fas fa-sign-out-alt'></i>
</Dropdown.Item>
</Dropdown>
在此先感谢您,祝您一切顺利。
import React from 'react'
import { Dropdown } from 'semantic-ui-react'
const friendOptions = [
{
key: 'Jenny Hess',
text: 'Jenny Hess',
value: 'Jenny Hess',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/jenny.jpg' },
},
{
key: 'Elliot Fu',
text: 'Elliot Fu',
value: 'Elliot Fu',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/elliot.jpg' },
},
{
key: 'Stevie Feliciano',
text: 'Stevie Feliciano',
value: 'Stevie Feliciano',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/stevie.jpg' },
},
{
key: 'Christian',
text: 'Christian',
value: 'Christian',
image: { avatar: true, src: 'https://react.semantic-ui.com/images/avatar/small/christian.jpg' },
},
]
const DropdownExampleInline = () => (
<span>
Show me posts by{' '}
<Dropdown
inline
options={friendOptions}
defaultValue={friendOptions[0].value}
/>
</span>
)
export default DropdownExampleInline
您可以将组件传递给 Dropdown 文本属性。
将图像作为组件传递给 'text' 属性。
const DropdownExampleDropdown = () => (
<Dropdown
text={<span><Image avatar src={'https://react.semantic-ui.com/logo.png'} /></span>}
options={optionsList}
/>
)
export default DropdownExampleDropdown
这与 Alex Court 建议的原理相同,只是不会抛出预期的文本错误。
发现于:
https://react.semantic-ui.com/modules/dropdown/#usage-trigger
import React from 'react'
import { Dropdown, Image } from 'semantic-ui-react'
export const DropdownMenu = () => (
const trigger = <Image avatar src={user.photoURL} />;
const options = [
{
key: 'user',
text: (
<span>
Signed in as <strong>{user.displayName}</strong>
</span>
),
disabled: true,
},
{
key: 'settings',
text: 'Settings',
icon: 'setting',
},
{
key: 'signOut',
text: 'Sign Out',
icon: 'sign out alternate',
},
];
return (
<Dropdown trigger={trigger} options={options} />
)
}