返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue之全局水印的实现示例
  • 766
分享到

Vue之全局水印的实现示例

2024-04-02 19:04:59 766人浏览 独家记忆
摘要

目录1.创建水印js文件 2.引入操作 2.1 在App.Vue中引用或其他页面 2.2 在router配置文件中引用【需求】系统内页面显示水印,登录页面没有水印(退出登录时,登录页

【需求】系统内页面显示水印,登录页面没有水印(退出登录时,登录页面不会显示水印)

1.创建水印Js文件



'use strict'
 
let watermark = {}
 
let setWatermark = (str) => {
  let id = '1.23452384164.123412415'
 
  if (document.getElementById(id) !== null) {
    document.body.removeChild(document.getElementById(id))
  }
 
  let can = document.createElement('canvas')
  can.width = 250
  can.height = 120
 
  let cans = can.getContext('2d')
  cans.rotate(-15 * Math.PI / 150)
  cans.font = '20px Vedana'
  cans.fillStyle = 'rgba(200, 200, 200, 0.20)'
  cans.textAlign = 'left'
  cans.textBaseline = 'Middle'
  cans.fillText(str, can.width / 8, can.height / 2)
 
  let div = document.createElement('div')
  div.id = id
  div.style.pointerEvents = 'none'
  div.style.top = '35px'
  div.style.left = '0px'
  div.style.position = 'fixed'
  div.style.zIndex = '100000'
  div.style.width = document.documentElement.clientWidth + 'px'
  div.style.height = document.documentElement.clientHeight + 'px'
  div.style.background = 'url(' + can.toDataURL('image/png') + ') left top repeat'
  document.body.appendChild(div)
  return id
}
 
// 该方法只允许调用一次
watermark.set = (str) => {
  let id = setWatermark(str)
  setInterval(() => {
    if (document.getElementById(id) === null) {
      id = setWatermark(str)
    }
  }, 500)
  window.onresize = () => {
    setWatermark(str)
  }
}

const outWatermark = (id) => {
    if (document.getElementById(id) !== null) {
      const div = document.getElementById(id)
      div.style.display = 'none'
    }
}
watermark.out = () => {
    const str = '1.23452384164.123412415'
    outWatermark(str)
}
 
export default watermark

2.引入操作

2.1 在App.vue中引用或其他页面


// 1.在App.vue文件中,导入该文件
import Watemark from '@/common/watermark';

computed: {
  userName() {
    const name = this.$store.state.user.name
    return (name && name.length > 0) ? name : '未获取到用户名'
  }
},
mounted() {
  Watermark.set(this.userName)
}

// 2.在其他页面引用
import Watemark from '@/common/watermark';

created() {
  Watermark.set('admin')
}

2.2 在router配置文件中引用


const outWatermark = (id) => {
  if (document.getElementById(id) !== null) {
    const div = document.getElementById(id)
    div.style.display = 'none'
  }
}

router.afterEach((to) => {
 if(to.path == '/'){
  Watermark.out() // 清除水印
 }else{
  Watermark.set('未获取到用户名') // 设置水印title
 }
});

到此这篇关于Vue之全局水印的实现示例的文章就介绍到这了,更多相关Vue 全局水印内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Vue之全局水印的实现示例

本文链接: https://lsjlt.com/news/130747.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Vue之全局水印的实现示例
    目录1.创建水印Js文件 2.引入操作 2.1 在App.vue中引用或其他页面 2.2 在router配置文件中引用【需求】系统内页面显示水印,登录页面没有水印(退出登录时,登录页...
    99+
    2024-04-02
  • Vue全局水印如何实现
    今天小编给大家分享一下Vue全局水印如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2024-04-02
  • Java实现全图背景水印的示例详解
    目录给图片添加水印的优点给图片添加水印的缺点添加全图水印给图片添加水印的优点 可以保护图片的版权:给图片添加水印可以显著地提高图片的版权保护效果。通常,如果没有版权水印的图片在网络上...
    99+
    2023-02-10
    Java实现全图背景水印 Java全图背景水印 Java 水印
  • SpringBoot实现PDF添加水印的示例
    目录简介方式1:使用 Apache PDFBox 库(1)添加 PDFBox 依赖(2)添加水印(3)完整代码方式2:使用 iText 库(1)添加 iText 依赖(2)添加水印(...
    99+
    2023-05-20
    SpringBoot PDF添加水印 SpringBoot 添加水印
  • Python去除PDF水印的实现示例
    今天介绍下用 Python 去除 PDF (图片)的水印。思路很简单,代码也很简洁。 首先来考虑 Python 如何去除图片的水印,然后再将思路复用到 PDF 上面。 这张图片是前...
    99+
    2024-04-02
  • vue全局挂载实现APP全局弹窗的示例代码
    目录需求背景需求分析代码展示需求背景 app端对接网页端的客服系统,在用户实现网页客户系统发起询问时,app不论在哪个页面都需要弹窗提示 需求分析 这个需求分为两步,一个是负责双向...
    99+
    2024-04-02
  • Vue实现全局菜单搜索框的示例
    目录前言一、过滤路由二、搜索框展示路由三、雏形出现但有缺陷四、优化搜索方式五、完整代码展示结论前言 本篇文章分享一下我在实际开发 Vue 项目时遇到的需要 —&mdash...
    99+
    2023-02-09
    Vue 全局菜单搜索框 Vue 搜索框
  • vue全局接入百度地图的实现示例
    目录前言一、获取ak密钥二、整合步骤总结前言 本文主要教大家如何把百度地图整合到我们的vue项目中 一、获取ak密钥 1、登录网址 https://lbsyun.baidu.com/...
    99+
    2024-04-02
  • Python实现为PDF去除水印的示例代码
    目录前言原理特色成果安装依赖代码想法前言 为什么做出这个? 就是有时候从网上下载的资料中的pdf有水印,看着不舒服。 比如说我从网上下载的试卷,然后去打印店打印,打印之后水印看着很不...
    99+
    2024-04-02
  • vue轻松实现水印效果
    前言: vue项目中使用水印效果,可指定容器 效果图: 1、不指定容器 2、指定容器 实现方法: 1、新建一个配置文件 watermark.js ,可放util,也可放别的地方 ...
    99+
    2024-04-02
  • vue实现页面添加水印
    本文实例为大家分享了vue实现页面添加水印的具体代码,供大家参考,具体内容如下 js文件 建一个watermark.js文件 let setWatermark = (str1, st...
    99+
    2024-04-02
  • Python实现为图片添加水印的示例详解
    目录1、引言2、filestools介绍2.1 安装2.2 filestools 功能介绍2.3 watermarker模块介绍2.4 代码实例补充1、引言 小屌丝:鱼哥,这个周末过...
    99+
    2024-04-02
  • JavaScript实现网页视频添加水印的示例代码
    目录示例图原理代码示例示例图 原理 通过html的页面布局,在video播放器层面,通过js控制dom,插入文本水印代码。 代码示例 index.html <!DOCTYP...
    99+
    2024-04-02
  • Java实现超简单抖音去水印的示例详解
    目录一、前言二、原理与步骤三、代码实现四、总结一、前言 抖音去水印方法很简单,以前一直没有去研究,以为搞个去水印还要用到算法去除,直到动手的时候才发现这么简单,不用编程基础都能做。 ...
    99+
    2024-04-02
  • Vue3 实现网页背景水印功能的示例代码
    经常有一些公司和组织出于系统文件或信息安全保密的需要,需要在系统网页上增加带有个人标识(系统账号或个人信息)的水印,可以简单防止截图外传 首先我们来看这样一个水印功能的实现思路,通...
    99+
    2022-11-13
    vue网页水印 vue网页背景水印
  • Vue官方文档梳理之全局API的示例分析
    这篇文章将为大家详细讲解有关Vue官方文档梳理之全局API的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Vue.extend配置项data必须为function...
    99+
    2024-04-02
  • Java在Excel中添加水印的实现(单一水印、平铺水印)
    在Excel中没有直接添加水印的功能,但依旧可以通过一定方式来实现类似水印效果。本文通过Java程序代码介绍具体实现方法。可添加单一水印效果,即水印是以单个文本字样来呈现;也可添加多...
    99+
    2024-04-02
  • vue实现页面添加水印效果
    最近在做项目的时候要求给页面加上水印效果,废话不多说直接上代码: export function watermark(settings) { debugger; //默认...
    99+
    2024-04-02
  • vue实现上传图片添加水印
    本文实例为大家分享了vue上传图片添加水印的具体实现代码,供大家参考,具体内容如下 1、封装添加水印方法 export async function addWaterMarke...
    99+
    2024-04-02
  • C#实现批量给图片添加水印的示例代码
    目录实践过程效果代码实践过程 效果 代码 public partial class Form1 : Form { public Form1() ...
    99+
    2022-12-09
    C#批量图片添加水印 C#图片添加水印 C# 添加水印
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作