>  기사  >  웹 프론트엔드  >  vue.js에서 vue-fontawesome 사용에 대해

vue.js에서 vue-fontawesome 사용에 대해

亚连
亚连원래의
2018-06-06 11:44:061546검색

이 글은 vue.js 시리즈 중 vue-fontawesome의 사용법을 주로 소개하고 있습니다. 필요하신 분들은 참고하시면 됩니다.

토스 서문

현재 개발에는 주로 vue.js 프레임워크를 사용하고 있습니다. , 그리고 vue에 익숙하지 않아서 이해는 되지만 아직은 반쯤 익은 상태라 지난 이틀간 scaffolding vue-를 사용하면서 빠르게 익숙해져야 할 것 같습니다. cli 프로젝트를 만들기 위해 font-awesome Perseverance에 익숙했고, github을 통해 큰 사람이 이미 vue-awesome을 만들었다는 것을 알게 되어서 여기저기 뒤척이기 시작했습니다... vue-cli 创建项目玩耍中,又一直对font-awesome锲而不舍,通过 github 了解到早有大牛搞出了 vue-awesome,因此就开始折腾了……

废话不多说,开搞!

准备工作

这个是作者的 github 地址:飞机

为了演示完整步骤,用脚手架新建个项目

正在创建中…

趁此闲话几句

这种方式使用有个好处就是,你可以自己自定义任何图标,即用 svg 格式输出,然后通过 Icon.register 去注册一个图标,注册方式如下:

如果图标很多的时候,DOM 中可能分散着大量的 svg 标签,这个不知道算不算缺点来着。

Icon.register({
 'chevron-right': {
  'width': 1280,
  'height': 1792,
  'paths': [{
   'd': 'M1107 877l-742 742q-19 19-45 19t-45-19l-166-166q-19-19-19-45t19-45l531-531-531-531q-19-19-19-45t19-45l166-166q19-19 45-19t45 19l742 742q19 19 19 45t-19 45z'
  }]
 }
});

chevron-right 这个是该图标的名字,在使用的时候通过

<icon name="chevron-right"></icon> 去使用,至于样式按照正常定义即可。

paths 里面就是图标的绘制 svg 时候的路径信息

安装OK了,进入正题……

准备工作:

  • 安装 vue-awesome

$ npm install vue-awesome --save

这个简单安装完成就OK。

结果预览

从图中看其实图标最后就是个 svg 标签

vue.js에서 vue-fontawesome 사용에 대해

图标存放目录

为了开发方便,新建 src/icons 目录集中存放图标js文件

$ cd src/
$ mkdir icons && cmod

这里 cmod 是 777 权限,由于是用的是虚拟机,所以经常出现权限问题,因此索性直接给 777(仅限本地开发)

icon 组件

下载 Icon.vue 文件

到这里下载 Icon.vue 文件,建议将整个项目 git 下来。

这个组件的作用就是,用来创建 <icon name="your icon name"></icon> 自定义标签。

然后把 Icon.vue 放到 components 目录下(放哪里可以自己决定)

在 src/icons 创建注册图标文件

这个目录集中放置所有 icon 的注册 js 文件

创建出口文件 index.js 这里面将引入所有图标 js 文件

// src/icons/index.js
import &#39;./chevron-right.js&#39;;
// ...... 其他需要的图标文件

以右键头图标为例:(chevron-right.js)

import Icon from '../components/Icon.vue';
Icon.register({
 &#39;chevron-right&#39;: {
  &#39;width&#39;: 1280,
  &#39;height&#39;: 1792,
  &#39;paths&#39;: [{
   &#39;d&#39;: &#39;M1107 877l-742 742q-19 19-45 19t-45-19l-166-166q-19-19-19-45t19-45l531-531-531-531q-19-19-19-45t19-45l166-166q19-19 45-19t45 19l742 742q19 19 19 45t-19 45z&#39;
  }]
 }
});

项目入口 main.js 引用字体库

项目主入口文件 main.js 中引入 vue-awesome 库和 icons/index.js 文件

引入图标组件

import Icon from &#39;./components/Icon&#39;;

引入图标内容文件

import &#39;./icons/index.js&#39;;

然后将 Icon 注册成 vue 组件

Vue.component(&#39;icon&#39;, Icon);

注册完成之后,我们就可以在代码中直接使用 <icon></icon>

더 이상 고민하지 말고 시작해 보세요!

준비

저자의 github 주소는 다음과 같습니다: Airplane
  1. 전체 단계를 보여주기 위해 생성 중인 스캐폴딩

    을 사용하여 새 프로젝트를 만듭니다...
  2. 몇 마디 대화를 나누는 기회를 가져보세요

    이 방법을 사용합니다. 가장 좋은 점은 어떤 아이콘이든 직접 커스터마이즈할 수 있다는 것, 즉 svg 형식으로 출력한 후 Icon.register를 통해 아이콘을 등록하는 것입니다. :
  3. 아이콘이 많으면 DOM에 있을 수도 있습니다. svg 태그가 많이 흩어져 있는 것이 단점인지 모르겠습니다.

    rrreee

    chevron-right 사용시에는
  4. <icon name="chevron-right"></icon> 으로 사용하시면 됩니다. 스타일은 정상적으로 정의하면 됩니다.

    paths에는 아이콘의 svg를 그릴 때 경로 정보가 포함됩니다
  5. 설치가 완료되었습니다. 본론으로 들어가겠습니다...

  6. 준비 작업:

    vue-awesome

    설치

$ npm install vue-awesome --save

이 간단한 설치는 괜찮습니다.

결과 미리보기

사진에서 아이콘은 실제로 마지막에 svg 태그입니다

vue.js에서 vue-fontawesome 사용에 대해

Icon 저장 디렉터리🎜🎜🎜개발의 편의를 위해 새로운 src/icons 디렉터리 아이콘 js 파일을 중앙에 저장하기 위해 만들어졌습니다🎜 rrreee🎜여기 cmod는 777 권한이 있습니다. 가상 머신이다보니 권한 문제가 자주 발생하기 때문에 그냥 777(로컬 개발 전용)로 줍니다🎜🎜🎜icon 컴포넌트🎜🎜🎜 Icon.vue 파일 다운로드🎜🎜여기로 이동 Icon.vue 파일을 다운로드하세요. 전체 프로젝트를 git하는 것이 좋습니다. 🎜🎜 이 구성 요소의 목적은 <icon name="your icon name"></icon> 사용자 정의 태그를 생성하는 것입니다. 🎜🎜그런 다음 Icon.vue를 구성 요소 디렉터리에 넣습니다(어디에 넣을지 결정할 수 있음) 🎜🎜🎜src/icons에 등록된 아이콘 파일을 만듭니다. 🎜🎜🎜이 디렉터리는 모든 아이콘 등록 js 파일을 중앙에 배치합니다. 🎜🎜내보내기 만들기 file index.js 모든 아이콘 js 파일을 여기로 가져옵니다🎜rrreee🎜오른쪽 클릭 아이콘을 예로 들어 보겠습니다. (chevron-right.js)🎜rrreee🎜🎜프로젝트 입구 main.js는 글꼴 라이브러리를 나타냅니다🎜🎜🎜 프로젝트 메인 입구 파일 main.js vue-awesome 라이브러리와 icons/index.js 파일에 도입🎜🎜아이콘 컴포넌트 소개🎜rrreee🎜아이콘 콘텐츠 파일 소개🎜 rrreee🎜그런 다음 아이콘을 vue 구성 요소로 등록합니다🎜rrreee🎜 등록이 완료되면 코드에서 <icon></icon> 태그를 직접 사용할 수 있습니다🎜🎜🎜End🎜🎜 🎜단계는 여전히 매우 간단합니다. 위의 단계를 거친 후에는 정상적으로 아이콘 라이브러리를 사용할 수 있습니다🎜🎜요약하면 단계는 실제로 다음 단계입니다.🎜🎜🎜🎜Import Icon.vue 컴포넌트🎜🎜🎜🎜new you -icon.js, Icon.register🎜🎜🎜🎜[예 선택] 새 아이콘 파일 내보내기 파일을 생성합니다. 아이콘을 많이 사용할 때 더 편리합니다.🎜🎜🎜🎜 아이콘 인용🎜🎜🎜🎜아이콘 스타일 설정(크기는 변환: scale()로 설정할 수 있음) 🎜🎜🎜🎜PS: 글꼴은 직접 설정할 수 있지만 설정할 수는 없습니다. 🎜🎜위 내용은 앞으로 모든 사람에게 도움이 되기를 바랍니다. 🎜🎜관련 글: 🎜🎜🎜vue에서 watch 청취 객체 및 해당 값의 변경 사항을 구현하는 방법🎜🎜🎜🎜vue에서 $emit를 사용할 때 상위 컴포넌트는 하위 컴포넌트의 이벤트를 수신할 수 없습니다. 구현 방법. 이것? 🎜🎜🎜🎜vue에서 전역 프롬프트 상자 구성 요소를 사용하는 방법은 무엇입니까? 🎜🎜

위 내용은 vue.js에서 vue-fontawesome 사용에 대해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.