ReactHTMLTableToExcel接受字符串类型的prop buttonText,
<ReactHTMLTableToExcel
id="test-table-xls-button"
className="download-table-xls-button"
table="table-to-xls"
filename="tablexls"
sheet="tablexls"
buttonText="Download as XLS"/>
我想显示一个字体惊人的图标,而不是文本,因此请修改代码。
<ReactHTMLTableToExcel
id="test-table-xls-button"
className="download-table-xls-button"
table="table-to-xls"
filename="tablexls"
sheet="tablexls"
buttonText={<IconDownload />} />
这实际上工作正常,我的意思是我可以看到图标按钮,但是在控制台上出现错误:
道具类型失败:提供给buttonText
的类型object
的道具ReactHTMLTableToExcel
无效,预期string
。
这是库的链接:https://www.npmjs.com/package/react-html-table-to-excel
那么,如何避免这些错误?
答案 0 :(得分:3)
一种替代方法是向其传递一个空字符串(或空格,如果它检查是否为null),然后使用CSS :: before属性在内容中包含您的fontAwesome图标。这样可以避免PropTypes警告。
答案 1 :(得分:0)
这是因为库组件需要此属性的字符串,而是提供了一个对象。因此简短的答案是您不应该这样做。 但实际上,您可以创建该库的自定义版本,并将原型更改为对象,并根据需要的方式修改图标的呈现方式。但通常不建议将对象传递给字符串道具并寻找抑制警告的方法。