day*_*mer 2 css icons svg reactjs material-ui
在我的项目中,我使用自定义svg文件作为要求的一部分。我正在使用它material-ui@3.9.3来实现这一目标。我查看了官方文档中提供的示例-> https://material-ui.com/style/icons/#svg-icons
但是,在我的版本中,自定义图标的显示方式不同。我的分叉版本可在https://codesandbox.io/s/mqnq9qrqn8 获得
我正在寻找的是一种使用可以与 Material-UI 的<Icon>组件很好地配合使用的自定义图标的方法。
有人可以帮我解决这个问题吗?谢谢
您还可以使用 Material-UI IconButton组件并将其包裹在您的 svg img 周围,如下所示
import React from 'react'
import { Icon } from "@material-ui/core";
import YourLogo from './yourlogo.svg'
export const Logo = () => (
<Icon>
<img src={YourLogo} height={25} width={25}/>
</Icon>
)
Run Code Online (Sandbox Code Playgroud)
您可以将 svg 文件作为 React 组件导入,然后直接在 Material UI 的 SvgIcon 组件中使用它。这也将允许您设置组件的样式。
import React from 'react';
import { SvgIcon, makeStyles } from '@material-ui/core';
import { ReactComponent as MySvg } from './img/someSvgFile.svg';
const useStyles = makeStyles(theme => {
mySvgStyle:{
fillColor: theme.palette.primary.main
}
})
function MySvgIcon() {
classes = useStyles();
return(
<SvgIcon className={classes.mySvgStyle}>
<MySvg/>
</SvgIcon>
)
}
Run Code Online (Sandbox Code Playgroud)