antd图标的本地化使用
使用antd开发的前端,项目迁移到内网以后,antd图标失效。导致分页的"<"和">"、<Icon/>、<Avatar/> 等标签均失效
解决方法:
- 下载iconfont,即antd的图标文件。链接:https://github.com/ant-design...
- 我使用create-react-app建立的项目,npm run build 后生成indext.html、static文件夹(包含css、js)。
- 在index.html的同级目录下保存下载的文件夹(iconfont)。
- 默认情况下,用到icon时会到阿里的cdn去取,内网环境时取字体失败。
- 修改npm run build 生成的js文件:用"/iconfont/iconfont"替换原始的"https://ali**"。
tips:
- 通过chrome调试时发现,原始的请求iconfont的地址是:https://ali***.woff或者https://ali***.eot等地址
- 替换时只需替换前边的部分,如"https://ali***.woff"替换为"/iconfont/iconfont.woff",所以实际替换时,只需替换:"https://ali***"为"/iconfont/iconfont"。这2个iconfont,第一个表示是iconfont文件夹,第二个其实是文件名的一部分,因为下载下来的字体文件都默认命名为iconfont.***,如iconfont.woff、iconfont.eot等。
- 以上只适合于不跨域的情况。
后记
其实关键的问题就是修改取字体的地址,网上有其他人使用修改webpack.config的方法,道理相同。只是本人太菜,没测试成功。这个方法只是权宜之计,要从根本解决,还是需参照其他攻略。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。