zoukankan      html  css  js  c++  java
  • vue-admin-template模板添加screenfull全屏插件

    先安装screenfull:npm install screenfull@4.2.0 --save    (注意版本号)

    一、在srccomponents目录下创建Screenfull文件夹,创建index.vue文件,封装screenfull

    <template>
      <div>
        <svg-icon :icon-class="isFullscreen?'exit-fullscreen':'fullscreen'" @click="click" />
      </div>
    </template>
    
    <script>
    import screenfull from 'screenfull'
    
    export default {
      name: 'Screenfull',
      data() {
        return {
          isFullscreen: false
        }
      },
      mounted() {
        this.init()
      },
      beforeDestroy() {
        this.destroy()
      },
      methods: {
        click() {
          if (!screenfull.enabled) {
            this.$message({
              message: 'you browser can not work',
              type: 'warning'
            })
            return false
          }
          screenfull.toggle()
        },
        change() {
          this.isFullscreen = screenfull.isFullscreen
        },
        init() {
          if (screenfull.enabled) {
            screenfull.on('change', this.change)
          }
        },
        destroy() {
          if (screenfull.enabled) {
            screenfull.off('change', this.change)
          }
        }
      }
    }
    </script>
    
    <style scoped>
    .screenfull-svg {
      display: inline-block;
      cursor: pointer;
      fill: #5a5e66;;
      width: 20px;
      height: 20px;
      vertical-align: 10px;
    }
    </style>

    二、在srclayoutcomponentsNavbar.vue中添加:

          <template v-if="device!=='mobile'">
            <screenfull id="screenfull" class="right-menu-item hover-effect" />
          </template>

    import Screenfull from "@/components/Screenfull";    // 添加部分
    
    export default {
      components: {
        Breadcrumb,
        Hamburger,
        Screenfull    // 添加部分
      },
      computed: {
        ...mapGetters(["sidebar", "avatar","device"])  //添加device,用于判断设备
      },

     三、导入svg文件

    在srciconssvg文件夹下,导入exit-fullscreen.svgfullscreen.svg

    exit-fullscreen.svg:

    <svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M49.217 41.329l-.136-35.24c-.06-2.715-2.302-4.345-5.022-4.405h-3.65c-2.712-.06-4.866 2.303-4.806 5.016l.152 19.164-24.151-23.79a6.698 6.698 0 0 0-9.499 0 6.76 6.76 0 0 0 0 9.526l23.93 23.713-18.345.074c-2.712-.069-5.228 1.813-5.64 5.02v3.462c.069 2.721 2.31 4.97 5.022 5.03l35.028-.207c.052.005.087.025.133.025l2.457.054a4.626 4.626 0 0 0 3.436-1.38c.88-.874 1.205-2.096 1.169-3.462l-.262-2.465c0-.048.182-.081.182-.136h.002zm52.523 51.212l18.32-.073c2.713.06 5.224-1.609 5.64-4.815v-3.462c-.068-2.722-2.317-4.97-5.021-5.04l-34.58.21c-.053 0-.086-.021-.138-.021l-2.451-.06a4.64 4.64 0 0 0-3.445 1.381c-.885.868-1.201 2.094-1.174 3.46l.27 2.46c.005.06-.177.095-.177.141l.141 34.697c.069 2.713 2.31 4.338 5.022 4.397l3.45.006c2.705.062 4.867-2.31 4.8-5.026l-.153-18.752 24.151 23.946a6.69 6.69 0 0 0 9.494 0 6.747 6.747 0 0 0 0-9.523L101.74 92.54v.001zM48.125 80.662a4.636 4.636 0 0 0-3.437-1.382l-2.457.06c-.05 0-.082.022-.137.022l-35.025-.21c-2.712.07-4.957 2.318-5.022 5.04v3.462c.409 3.206 2.925 4.874 5.633 4.814l18.554.06-24.132 23.928c-2.62 2.626-2.62 6.89 0 9.524a6.694 6.694 0 0 0 9.496 0l24.155-23.79-.155 18.866c-.06 2.722 2.094 5.093 4.801 5.025h3.65c2.72-.069 4.962-1.685 5.022-4.406l.141-34.956c0-.05-.182-.082-.182-.136l.262-2.46c.03-1.366-.286-2.592-1.166-3.46h-.001zM80.08 47.397a4.62 4.62 0 0 0 3.443 1.374l2.45-.054c.055 0 .088-.02.143-.028l35.08.21c2.712-.062 4.953-2.312 5.021-5.033l.009-3.463c-.417-3.211-2.937-5.084-5.64-5.025l-18.615-.073 23.917-23.715c2.63-2.623 2.63-6.879.008-9.513a6.691 6.691 0 0 0-9.494 0L92.251 26.016l.155-19.312c.065-2.713-2.097-5.085-4.802-5.025h-3.45c-2.713.069-4.954 1.693-5.022 4.406l-.139 35.247c0 .054.18.088.18.136l-.267 2.465c-.028 1.366.288 2.588 1.174 3.463v.001z"/></svg>

    fullscreen.svg:

    <svg width="128" height="128" xmlns="http://www.w3.org/2000/svg"><path d="M38.47 52L52 38.462l-23.648-23.67L43.209 0H.035L0 43.137l14.757-14.865L38.47 52zm74.773 47.726L89.526 76 76 89.536l23.648 23.672L84.795 128h43.174L128 84.863l-14.757 14.863zM89.538 52l23.668-23.648L128 43.207V.038L84.866 0 99.73 14.76 76 38.472 89.538 52zM38.46 76L14.792 99.651 0 84.794v43.173l43.137.033-14.865-14.757L52 89.53 38.46 76z"/></svg>
  • 相关阅读:
    电脑桌面图标不显示图案变成白色图标该怎么办?
    行动上的巨人养成指南
    荣耀MagicBook Pro 2020款对比2019款做了哪些升级
    P8 function template ,函数模板
    MATLAB中imfill()函数
    MagicBook Pro 2020锐龙版
    P7. class template, 类模板,模板类
    6. namespace经验谈
    macbook pro2020参数
    MATLAB取整
  • 原文地址:https://www.cnblogs.com/flypig666/p/11856626.html
Copyright © 2011-2022 走看看