• vue中使用svgicon


    1 在src目录新建一个icons目录,目录结构如下
    
    
    
    svg下面放iconfont的icon标签的svg标签文件,下下来复制粘贴即可使用
    
    
    
    index.js文件:
    
    import Vue from 'vue'
    import SvgIcon from '@/components/SvgIcon'// svg组件
     
    // register globally
    Vue.component('svg-icon', SvgIcon)
     
    const requireAll = requireContext => requireContext.keys().map(requireContext)
    const req = require.context('./svg', false, /\.svg$/)
    const iconMap = requireAll(req)
    如上面代码而言,我们需要封装一下icon,在components下新建SvgIcon文件
    
    index.vue文件内容:
    
    <template>
      <svg :class="svgClass" aria-hidden="true">
        <use :xlink:href="iconName"/>
      </svg>
    </template>
     
    <script>
      export default {
        name: 'SvgIcon',
        props: {
          iconClass: {
            type: String,
            required: true
          },
          className: {
            type: String,
            default: ''
          }
        },
        computed: {
          iconName() {
            return `#icon-${this.iconClass}`
          },
          svgClass() {
            if (this.className) {
              return 'svg-icon ' + this.className
            } else {
              return 'svg-icon'
            }
          }
        }
      }
    </script>
     
    <style scoped>
      .svg-icon {
         1em;
        height: 1em;
        vertical-align: -0.15em;
        fill: currentColor;
        overflow: hidden;
      }
    </style>
    当然如参考文章所言,我们须加载依赖svg-sprite-loader,在webpack.base.conf.js 中
    
    具体为什么这么用,请参考优雅的使用icon。
    
    因为组件已经全局注册,即在组件中   <svg-icon iconClass="money"></svg-icon>  使用即可,这种用法好处很多。具体参考 你懂的。我就简单记录一下copy代码的过程而已。
    

      

  • 相关阅读:
    百度开发者中心BAE新建Java应用
    微信公众平台开发(三)位置信息的识别
    确定路名、标志性建筑和商场名的经度纬度
    Eclipse中Java Project转换为Java Web Project
    你应该知道的8个Java牛人
    周边信息查询
    在Java中避免空指针异常(Null Pointer Exception)
    google guava使用例子/示范(一)
    docker 相关链接
    HashMap 的数据结构
  • 原文地址:https://www.cnblogs.com/zhanglanzuopin/p/15709808.html
Copyright © 2020-2023  润新知