【发布时间】:2019-03-17 23:26:40
【问题描述】:
我用 react 做迭代图已经很长时间了,而且取得了很多成功。我唯一没有遇到的是通过迭代渲染 SVG。
从 react 组件开始设置迭代 mp 并从 ./data.js 导入数据数组。
Cards.js
import React from 'react';
import data from './data';
const icons = data.map(icon => (
<>
<div><span>{icon.svg}</span> {icon.type}</div>
</>
));
const Cards = () => (<>{ icons }</>);
export default Cards;
数据数组...
data.js
export default[
{
svg: './icons/menu.svg',
type: Menu
},
{
svg: './icons/home.svg',
type: Home
},
{
svg: './icons/clock.svg',
type: History
}
]
问题是,它无法渲染 .svg 以下目录,但最终会渲染字符串 ./icons/xxx.svg。
我尝试了另一种方法..
svg: require('./icons/clock.svg'),
... 仍然得到相同的结果。我快没主意了。有什么建议?我了解require('') 使用 JSX img 标签...但是我只需要 .svg 文件,有没有办法将 svg 文件导入数据数组?
【问题讨论】:
-
你试过这个{require(icon.svg)} {icon.type}
标签: javascript reactjs svg