本篇内容介绍了“vue网站全局置灰功能如何实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1、前端独立实现
两种不同的逻辑,一种是前端自己实现,一种是结合后台管理系统来控制,网站是正常还是置灰。
直接在public文件夹下的index.html文件的html标签里加上
style="filter:grayscale(100%)",总的就是
<html style="filter:grayscale(100%)">
2、通过后台管理控制设置网站的整体置灰样式
1、先给public文件夹下的index.html文件的html标签添加一个ID;
<html id="html_box">
2、在APP.vue文件中通过接口调用到目前后台管理系统所设置的具体是正常状态还是置灰状态,网站来做出相应设置;
(1)、在APP.vue文件中引入获取状态的接口;
import { queryGary } from '@/api/index.js'
(2)、在mounted钩子函数中调用接口获取状态;
queryGary().then((res) => { // 调用接口获取状态 if (res.success) { if (res.data.changeGray === 1) { let html_box = document.getElementById('html_box') html_box.style.filter = 'grayscale(100%)' } if (res.data.changeGray === 0) { let html_box = document.getElementById('html_box') html_box.style.filter = 'grayscale(0)' } } })
3、通过ID获取到html标签这个元素,来设置具体是正常状态还是置灰状态;
注意:状态为“1”代表置灰,状态为“0”代表正常
queryGary().then((res) => { if (res.success) { if (res.data.changeGray === 1) { let html_box = document.getElementById('html_box') // 通过ID获取到html标签这个元素 html_box.style.filter = 'grayscale(100%)' // 设置网站整体置灰 } if (res.data.changeGray === 0) { let html_box = document.getElementById('html_box') html_box.style.filter = 'grayscale(0)' } } })