GithubHelp home page GithubHelp logo

hhy5277 / vue-svg-icon Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cenkai88/vue-svg-icon

0.0 1.0 0.0 333 KB

a solution for multicolor svg icons in vue2.0 (vue2.0的可变彩色svg图标方案)

Home Page: https://cenkai88.github.io/vue-svg-icon/demo/

License: Other

Vue 28.09% JavaScript 71.37% HTML 0.54%

vue-svg-icon's Introduction

vue-svg-icon

a solution for multicolor svg icons in vue2 轻量的Vue2多色动态svg图标方案 中文版说明

v1.2.9

demo: https://cenkai88.github.io/vue-svg-icon/demo/
features:

  • no need to inject SVG in main.js anymore
  • support path, circle, ellipse, rect, line, polyline, polygon tag of SVG
  • support grouped tags in SVG
  • real-time svg editing in illustrator or sketch
  • dynamically set the color of ONE PART of the svg through css 'color' property
  • an awesome SVG icon site iconfont

Usage

1. install

npm install vue-svg-icon --save-dev

2. put your svg into src/svg/

  • this dir are not supported to be configured now
  • src folder should be in the same folder with node_modules

3. import vue-svg-icon in your main.js

import Icon from 'vue-svg-icon/Icon.vue';
Vue.component('icon', Icon);  

4. use the svg icon in your vue!

<icon name="chameleon" :scale="20"></icon>

Edit svg pictures in illustrator

  • Notice all the rect or line should be converted to path.(not anymore since v1.1.0)
  • When saving the SVG, please choose 'Save As' and set CSS Properties as 'Presentation Attributes' in advanced settings.
  • Pls set the color of the part that can be changed through css as #000000 in illustrator,if you want to use black in SVG but don't want it to be altered by css, pls set it as #000001
  • the color of stroke can be controlled through stroke property of icon if set as #000000 (since v1.1.0).
  • recommended size of SVG is 200*200

Trouble Shooting

  1. cannot find corresponding .svg file in vue-svg-icon/svg when you inject it in main.js, please keep the name in main.js and the filename exactly same.
[Vue warn]: Invalid prop: custom validator check failed for prop "name". 
  1. cannot find the "svg" fold in src folder
This dependency was not found:
   
   * !xml-loader!../../src/svg in ./~/.6.4.1@babel-loader/lib!./~/.11.1.4@vue-loader/lib/selector.js?type=script&index=0!./~/.1.2.8@vue-svg-icon/Icon.vue
   
   To install it, you can run: npm install --save !xml-loader!../../src/svg
  1. pls check the .babelrc file of root folder
Module build failed: ReferenceError: Unknown plugin "transform-runtime"
 specified in "/Users/test/Desktop/Dev/github/.babelrc" at 0, attempted to resolve relative to 
 "/Users/test/Desktop/Dev/github"

中文版本说明

示例: https://cenkai88.github.io/vue-svg-icon/demo/   特点:

  • 不再需要通过inject注册SVG
  • 支持SVG文件中path, circle, ellipse, rect, line, polyline, polygon 标签
  • 支持SVG文件中存在编组的标签
  • 可即时在illustrator中编辑svg图片
  • 可通过css的color属性动态地调整svg中某一部分的颜色

1. 安装

npm install vue-svg-icon --save-dev

2. 将svg图片放入src/svg/

这里安利一个svg图片库iconfont

  • src/svg路径暂时不可配置
  • src文件夹应和node_modules在同一个文件夹下

3. 在项目的main.js入口引入vue-svg-icon

import Icon from 'vue-svg-icon/Icon.vue';
Vue.component('icon', Icon); 

4. 在网页中使用icon标签就可以啦!

<icon name="chameleon" scale="20"></icon>

在illustrator中编辑svg图片时

  • 注意illustrator中所有的矩形线段等等需转成复合路径再保存。(v1.1.0后不再需要)
  • 第一次编辑完保存时,请选择"另存为",在"高级选项"中将"css属性"设置成演示文稿属性
  • 需要通过css动态设置颜色等部分请将填充色设为纯黑(#000000),如果想设置黑色但不受SVG的color影响请将填充色设为(#000001)
  • 描边的颜色同样可在illustrator或sketch中设为纯黑(#000000),然后通过icon的CSS中stroke属性来动态控制 (自v1.1.0起)。
  • 推荐SVG尺寸为200*200

For detailed explanation on how things work, checkout the guide and docs for vue-loader.

vue-svg-icon's People

Contributors

cenkai88 avatar herbluo avatar jefferyliang avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.