我是React的新手,我正在使用material-ui来完成任务。
我遇到的问题是,即使按material-ui docs,图标也不会显示:
每个文档
import Icon from '@material-ui/core/Icon';
...
<Icon className={classes.icon} color="action">
add_circle
</Icon>
我正在尝试使用以下方法获取导航项
import React from 'react';
import { NavLink } from 'react-router-dom'
import PropTypes from 'prop-types';
import { withStyles } from '@material-ui/core/styles';
import Icon from '@material-ui/core/Icon';
import InboxIcon from '@material-ui/icons/Inbox';
import ListItem from '@material-ui/core/ListItem';
import ListItemIcon from '@material-ui/core/ListItemIcon';
import ListItemText from '@material-ui/core/ListItemText';
import _ from 'lodash';
const SideMenuItems = ({ menuItems }) => {
return _.map( menuItems ,( menuItem )=>{
const { text, link, icon } = menuItem;
return (
<NavLink to={link} key={link}>
<ListItem>
<ListItemIcon>
<Icon>add_circle</Icon>
</ListItemIcon>
<ListItemText inset primary={text} />
</ListItem>
</NavLink>
);
});
};
所有内容均可呈现良好的BUT图标,仅呈现文本。我已经尝试过使用显式图标声明它,并且它可以工作(例如<HomeIcon/>
),但我需要从配置对象中动态生成它,所以我不能使用它...
任何帮助或解释将不胜感激 预先感谢
答案 0 :(得分:1)
您可能忘记了将图标字体导入到index.html
文件中。您需要添加以下样式表:
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
这在文档的Font Icons部分中进行了说明。请注意,HomeIcon
是SVG图标,呈现svg
元素而不是使用字体。
答案 1 :(得分:-1)
这对我有用
import AddCircleIcon from '@material-ui/icons/AddCircle';
<AddCircleIcon style={{ fontSize: 50 }} color="primary"></AddCircleIcon>