vue如何根据网站路由判断页面主题色详解


Posted in Javascript onNovember 02, 2018

前言

本文主要介绍的是vue根据网站路由判断页面主题色的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧

需求:

不同品牌对应不同版本配色

做法:

根据域名带的参数判断进入哪个品牌,对应哪个版本

在main.js中

import Vue from 'vue'
import App from './App'
import router from './router'
import axios from 'axios'
import MintUI from 'mint-ui'
import { Indicator } from 'mint-ui'
import { getUrls } from '@/util/utils'
import 'mint-ui/lib/style.css'
import './css/index.css'
Vue.use(MintUI)
//添加请求拦截器 loading
axios.interceptors.request.use(function (config) {
 Indicator.open({
 text: '加载中...',
 spinnerType: 'fading-circle'
 })
 return config
}),function (error) {
 Indicator.close()
 return Promise.reject(error)
}
axios.interceptors.response.use(function (config) {
 Indicator.close()
 return config
}),function (error) {
 return Promise.reject(error)
}
 
Vue.prototype.$http = axios
Vue.prototype.getUrls = getUrls
router.beforeEach((to,from,next) => {
 if (sessionStorage.getItem('basecolor')) {
 document.documentElement.style.setProperty("--color", sessionStorage.getItem('basecolor'))
 next()
 }
})
Vue.config.productionTip = false
 
/* eslint-disable no-new */
new Vue({
 el: '#app',
 router,
 components: { App },
 template: '<App/>'
})

在util.js中

export function getUrls() {
 let colorValue
 let url = window.location.href
 let urlArr = url.split('?')
 let appU = urlArr[0].split('/')
 let styles = getComputedStyle(document.documentElement)
 if (appU[appU.length-1] === 'login') {
 colorValue = styles.getPropertyValue('--OLAY')
 sessionStorage.setItem('basecolor', colorValue)
 this.$router.push('/login')
 } else if (appU[appU.length-1] === 'resetPassword') {
 colorValue = styles.getPropertyValue('--pampers')
 sessionStorage.setItem('basecolor', colorValue)
 this.$router.push('/login')
 }
}

在App.vue

<template>
 <div id="app">
 <router-view/>
 </div>
</template>
 
<script>
 export default {
 name: 'App',
 created() {
  this.getUrls()
 }
}
</script>
 
<style>
 :root {
 --OLAY: rgb(237,202,138);
 --pampers: rgb(5,183,185);
 --color: #fff;
 }
 #app{
 height: 100%;
 }
</style>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
根据分辩率调用不同的CSS.
Jan 08 Javascript
js 无提示关闭浏览器页面的代码
Mar 09 Javascript
js中prototype用法详细介绍
Nov 14 Javascript
node.js中的fs.fstat方法使用说明
Dec 15 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
Dec 18 Javascript
jQuery实现为图片添加镜头放大效果的方法
Jun 25 Javascript
Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
Jun 23 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
Apr 04 Javascript
jQuery提示框插件SweetAlert用法分析
Aug 05 jQuery
微信小程序开发摇一摇功能
Nov 22 Javascript
JavaScript中如何对多维数组(矩阵)去重的实现
Dec 04 Javascript
原生Javascript+HTML5一步步实现拖拽排序
Jun 12 Javascript
小程序实现列表点赞功能
Nov 02 #Javascript
Vue中的vue-resource示例详解
Nov 02 #Javascript
微信小程序实现列表页的点赞和取消点赞功能
Nov 02 #Javascript
React如何解决fetch跨域请求时session失效问题
Nov 02 #Javascript
element ui table 增加筛选的方法示例
Nov 02 #Javascript
Vue请求JSON Server服务器数据的实现方法
Nov 02 #Javascript
详解使用element-ui table组件的筛选功能的一个小坑
Nov 02 #Javascript
You might like
使用 MySQL Date/Time 类型
2008/03/26 PHP
一个简单php扩展介绍与开发教程
2010/08/19 PHP
php给一组指定关键词添加span标签的方法
2015/03/31 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
优秀js开源框架-jQuery使用手册(1)
2007/03/10 Javascript
jQuery仿Excel表格编辑功能的实现代码
2013/05/01 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
Javascript实现页面跳转的几种方式分享
2013/10/26 Javascript
jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
2015/10/23 Javascript
JavaScript数据结构与算法之链表
2016/01/29 Javascript
微信小程序使用wxParse解析html的方法教程
2018/07/06 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
2018/08/22 Javascript
vue生命周期的探索
2019/04/03 Javascript
[03:01]2014DOTA2国际邀请赛 小组赛7月13日TOPPLAY
2014/07/14 DOTA
python设置检查点简单实现代码
2014/07/01 Python
将Python代码打包为jar软件的简单方法
2015/08/04 Python
Python中的集合类型知识讲解
2015/08/19 Python
批量获取及验证HTTP代理的Python脚本
2017/04/23 Python
关于Python数据结构中字典的心得
2017/12/04 Python
python使用openCV遍历文件夹里所有视频文件并保存成图片
2020/01/14 Python
通过代码简单了解django model序列化作用
2020/11/12 Python
Django跨域请求原理及实现代码
2020/11/14 Python
用css3制作纸张效果(外翻卷角)
2013/02/01 HTML / CSS
三星美国官网:Samsung美国
2017/02/06 全球购物
土耳其时尚购物网站:Morhipo
2017/09/04 全球购物
RetroStage德国:复古服装
2019/02/03 全球购物
注塑工厂厂长岗位职责
2013/12/02 职场文书
文明学生标兵事迹
2014/01/21 职场文书
工厂采购员岗位职责
2014/04/08 职场文书
护士长2014年终工作总结
2014/11/11 职场文书
人工作失职检讨书
2015/05/05 职场文书
目标责任书格式范文
2015/05/11 职场文书
《悬崖边的树》读后感2篇
2019/12/02 职场文书
排查MySQL生产环境索引没有效果
2022/04/11 MySQL
volatile保证可见性及重排序方法
2022/08/05 Java/Android
python中validators库的使用方法详解
2022/09/23 Python