如何将字体 Awesome 图标导入侧边栏菜单
how to import fontAwsome icon into sideBar-menu
我正在 Vue.js 项目中工作
我正在使用 fontAwsome 库
有我的版本:
"@fortawesome/fontawesome-svg-core": "^1.2.34",
"@fortawesome/free-solid-svg-icons": "^5.15.2",
"@fortawesome/vue-fontawesome": "^2.0.2",
我在 main.js 做的:
import { library } from "@fortawesome/fontawesome-svg-core";
import { faChessKnight, faChessQueen, faChessKing, faChartLine } from "@fortawesome/free-solid-svg-icons";
import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
library.add(faChessKing);
Vue.component("font-awesome-icon", FontAwesomeIcon);
现在我可以这样添加图标了:
<font-awesome-icon icon="chess-king" />
BUT/AND
我正在使用 vue-sidebar-menu:vue-sidebar-menu
我想在 vue-sidebar-menu 结构中使用 fontAwsomeIcons:
href: '/',
title: 'Dashboard',
icon: I want to use icon from fontAwsome here
在这里使用 fontAwsome 图标的正确语法是什么?
PS:这是faChessKing的控制台日志:
Object { prefix: "fas", iconName: "chess-king", icon: (5) […] }
icon: Array(5) [ 448, 512, [], … ]
0: 448
1: 512
2: Array []
3: "f43f"
4: "M400 448H48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm16-288H256v-48h40a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8h-40V8a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v40h-40a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h40v48H32a32 32 0 0 0-30.52 41.54L74.56 416h298.88l73.08-214.46A32 32 0 0 0 416 160z"
length: 5
<prototype>: Array []
iconName: "chess-king"
prefix: "fas"
<prototype>: Object { … }
编辑:
vue.js 版本是 "vue": "^2.6.12"
在一个新的 Vue 3 项目中试过了,下面的代码示例应该适合你。两个版本之间有一些细微的变化,我猜这是问题所在。
首先导入图标
import Vue from 'vue'
import { library } from '@fortawesome/fontawesome-svg-core'
import { faChessKing } from '@fortawesome/free-solid-svg-icons'
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
library.add(faChessKing)
Vue.component('font-awesome-icon', FontAwesomeIcon)
然后,使用
// menu
{
href: '/',
title: 'Dashboard',
// Set icon as font-awesome
icon: {
element: 'font-awesome-icon',
attributes: {
// Then under icon.attributes, specify the icon to use
icon: 'chess-king'
}
}
}
如果您需要为切换和下拉图标使用插槽,则对应于:
<sidebar-menu>
<font-awesome-icon slot="toggle-icon" icon="chess-king"></font-awesome-icon>
<font-awesome-icon slot="dropdown-icon" icon="chess-king"></font-awesome-icon>
</sidebar-menu>
如果您只使用几个图标,另一种选择是直接从 FA 下载您需要的资源。这样您就不必为这样一个简单的功能添加所有这些 Font-Awesome 依赖项。例如
icon: { element: 'span', class: 'my-icon', attributes: {}, text: ''}
我正在 Vue.js 项目中工作
我正在使用 fontAwsome 库
有我的版本:
"@fortawesome/fontawesome-svg-core": "^1.2.34",
"@fortawesome/free-solid-svg-icons": "^5.15.2",
"@fortawesome/vue-fontawesome": "^2.0.2",
我在 main.js 做的:
import { library } from "@fortawesome/fontawesome-svg-core";
import { faChessKnight, faChessQueen, faChessKing, faChartLine } from "@fortawesome/free-solid-svg-icons";
import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
library.add(faChessKing);
Vue.component("font-awesome-icon", FontAwesomeIcon);
现在我可以这样添加图标了:
<font-awesome-icon icon="chess-king" />
BUT/AND
我正在使用 vue-sidebar-menu:vue-sidebar-menu
我想在 vue-sidebar-menu 结构中使用 fontAwsomeIcons:
href: '/',
title: 'Dashboard',
icon: I want to use icon from fontAwsome here
在这里使用 fontAwsome 图标的正确语法是什么?
PS:这是faChessKing的控制台日志:
Object { prefix: "fas", iconName: "chess-king", icon: (5) […] }
icon: Array(5) [ 448, 512, [], … ]
0: 448
1: 512
2: Array []
3: "f43f"
4: "M400 448H48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm16-288H256v-48h40a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8h-40V8a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v40h-40a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h40v48H32a32 32 0 0 0-30.52 41.54L74.56 416h298.88l73.08-214.46A32 32 0 0 0 416 160z"
length: 5
<prototype>: Array []
iconName: "chess-king"
prefix: "fas"
<prototype>: Object { … }
编辑:
vue.js 版本是 "vue": "^2.6.12"
在一个新的 Vue 3 项目中试过了,下面的代码示例应该适合你。两个版本之间有一些细微的变化,我猜这是问题所在。
首先导入图标
import Vue from 'vue'
import { library } from '@fortawesome/fontawesome-svg-core'
import { faChessKing } from '@fortawesome/free-solid-svg-icons'
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
library.add(faChessKing)
Vue.component('font-awesome-icon', FontAwesomeIcon)
然后,使用
// menu
{
href: '/',
title: 'Dashboard',
// Set icon as font-awesome
icon: {
element: 'font-awesome-icon',
attributes: {
// Then under icon.attributes, specify the icon to use
icon: 'chess-king'
}
}
}
如果您需要为切换和下拉图标使用插槽,则对应于:
<sidebar-menu>
<font-awesome-icon slot="toggle-icon" icon="chess-king"></font-awesome-icon>
<font-awesome-icon slot="dropdown-icon" icon="chess-king"></font-awesome-icon>
</sidebar-menu>
如果您只使用几个图标,另一种选择是直接从 FA 下载您需要的资源。这样您就不必为这样一个简单的功能添加所有这些 Font-Awesome 依赖项。例如
icon: { element: 'span', class: 'my-icon', attributes: {}, text: ''}