1.下载你的iconfont项目
1.将图标添加到项目,修改font-family值

2.下载项目打包文件,解压后如图所示

我们只关心里面的iconfont.css和iconfont.json
我们在这个文件夹,新建一个convert.js,内容如下
//convert.js
let path1 = "./iconfont.json";
let fs = require('fs');
const path = require('path');
let plays = JSON.parse(fs.readFileSync(path1));
const obj = {}
plays.glyphs.forEach((item)=>{obj['uicon-'+item.font_class] = '\\'+'u'+item.unicode
})
console.log(obj);
let json = "export default" + JSON.stringify(obj)
json = json.replace(/\\\\/g,'\\')
const r = path.resolve(__dirname,'myIcons.js');
fs.writeFile(r, json, 'utf8', (err) => {if (err) {console.log('写入文件出错拉!具体错误:' + err)return message.error("写入路径失败,请重新输入!")} else {console.log('ok');}
});
执行convert.js,得到myIcons.js
将这个文件放入@/uni_modules/uview-ui/components/u-icon/文件夹下,其实myIcons.js和icons.js的样子基本相同,存着一个对象,里面放着(图标名:unicode)键值对
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5ejtU8fh-1654571195155)(file:///C:/Users/AdamJ/AppData/Roaming/marktext/images/2022-06-07-10-42-30-image.png?msec=1654571126510)]](https://img-blog.csdnimg.cn/7b5ed4df9d8043068be28428b44d6b8a.png)
在同目录下的props.js,我们添加一个属性,当我们想要使用自己的图标的时候,就给u-icon添加这个属性
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f32lMrea-1654571195157)(file:///C:/Users/AdamJ/AppData/Roaming/marktext/images/2022-06-07-10-44-08-image.png?msec=1654571126510)]](https://img-blog.csdnimg.cn/b55a7455b16f43e09f1eaf2d0e38dcda.png)
最后修改u-icon.vue

App.vue中,添加下载项目中的iconfont.css
![(file://C:\Users\AdamJ\AppData\Roaming\marktext\images\2022-06-07-10-54-35-image.png?msec=1654571126512)]](https://img-blog.csdnimg.cn/5de504c8b4d74b0f88485a944d0fa8c8.png)
iconfont.css添加到static/iconfont/文件下
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tjBV4Sun-1654571195162)(file:///C:/Users/AdamJ/AppData/Roaming/marktext/images/2022-06-07-10-55-51-image.png?msec=1654571126513)]](https://img-blog.csdnimg.cn/8c5d7c3c832c4be99fdf0cba5ffb80f0.png)
2.调用
·
<u-icon name="weixiu" useOtherIcon></u-icon>
成功调用