[Requirement] The system pages display watermarks, but the login page does not have a watermark (the login page will not display a watermark when logging out) 1. Create a watermark Js file/* * @Author: Liu Xiaoer* @Date: 2021-07-15 14:43:27 * @LastEditTime: 2021-07-15 15:00:27 * @LastEditors: Please set LastEditors * @Description: Add watermark * @FilePath: /huashijc_MeetingSys/src/common/warterMark.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 } // This method is only allowed to be called oncewatermark.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. Introduction operation 2.1 Reference in App.vue or other pages// 1.In the App.vue file, import the file import Watermark from '@/common/watermark'; computed: { userName() { const name = this.$store.state.user.name return (name && name.length > 0) ? name : 'User name not obtained' } }, mounted() { Watermark.set(this.userName) } // 2. Reference import Watermark from '@/common/watermark' in other pages; created() { Watermark.set('admin') } 2.2 Reference in the router configuration fileconst outWatermark = (id) => { if (document.getElementById(id) !== null) { const div = document.getElementById(id) div.style.display = 'none' } } router.afterEach((to) => { if(to.path == '/'){ Watermark.out() // Clear watermark }else{ Watermark.set('Username not obtained') // Set watermark title } }); This is the end of this article about the implementation example of Vue's global watermark. For more relevant Vue global watermark content, please search 123WORDPRESS.COM's previous articles or continue to browse the following related articles. I hope everyone will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: Example analysis of the page splitting principle of MySQL clustered index
>>: Detailed explanation of linux crm deployment code
Unicode is a character encoding scheme developed ...
Let's take a look at the command to restart t...
Preface Starting from React 16, the concept of Er...
1. Download from the official website and unzip h...
This article shares with you the installation and...
The use of Vue+ElementUI Tree is for your referen...
Table of contents 1. Component 2. keep-alive 2.1 ...
We know that in general, a function must be calle...
Convert code to image using html2canvas is a very...
In the Linux system, in addition to various accou...
Recently, I have done a simple study on the data ...
Promise is a new solution for asynchronous progra...
The following questions are all based on the Inno...
Table of contents Common compression formats: gz ...
Related articles: Install Docker using yum under ...