177 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
		
		
			
		
	
	
			177 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
| 
								 | 
							
								<script>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									import config from './config'
							 | 
						||
| 
								 | 
							
									import store from '@/store'
							 | 
						||
| 
								 | 
							
									import {
							 | 
						||
| 
								 | 
							
										getToken,setToken
							 | 
						||
| 
								 | 
							
									} from '@/utils/auth'
							 | 
						||
| 
								 | 
							
									
							 | 
						||
| 
								 | 
							
									
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									export default {
							 | 
						||
| 
								 | 
							
										onLaunch: function() {
							 | 
						||
| 
								 | 
							
											this.initApp()
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										methods: {
							 | 
						||
| 
								 | 
							
											// 初始化应用
							 | 
						||
| 
								 | 
							
											initApp() {
							 | 
						||
| 
								 | 
							
												
							 | 
						||
| 
								 | 
							
												// 初始化应用配置
							 | 
						||
| 
								 | 
							
												this.initConfig()
							 | 
						||
| 
								 | 
							
												// 检查用户登录状态
							 | 
						||
| 
								 | 
							
												//#ifdef H5
							 | 
						||
| 
								 | 
							
												//this.checkLogin()
							 | 
						||
| 
								 | 
							
												//#endif
							 | 
						||
| 
								 | 
							
											},
							 | 
						||
| 
								 | 
							
											initConfig() {
							 | 
						||
| 
								 | 
							
												let that = this;
							 | 
						||
| 
								 | 
							
												
							 | 
						||
| 
								 | 
							
												this.globalData.config = config
							 | 
						||
| 
								 | 
							
											},
							 | 
						||
| 
								 | 
							
											checkLogin() {
							 | 
						||
| 
								 | 
							
												if (!getToken()) {
							 | 
						||
| 
								 | 
							
													//this.$tab.reLaunch('/pages/login')
							 | 
						||
| 
								 | 
							
												}
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								</script>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<style lang="scss">
							 | 
						||
| 
								 | 
							
									@import "uview-ui/index.scss";
							 | 
						||
| 
								 | 
							
									@import '@/static/scss/index.scss';
							 | 
						||
| 
								 | 
							
									@import "colorui/main.css";
							 | 
						||
| 
								 | 
							
									@import "colorui/icon.css";
							 | 
						||
| 
								 | 
							
									@import 'quill/quill.bubble.css';
							 | 
						||
| 
								 | 
							
									@import 'quill/quill.core.css';
							 | 
						||
| 
								 | 
							
									@import 'quill/quill.snow.css';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-list {
							 | 
						||
| 
								 | 
							
										display: flex;
							 | 
						||
| 
								 | 
							
										flex-wrap: wrap;
							 | 
						||
| 
								 | 
							
										padding: 0px 40upx 0px;
							 | 
						||
| 
								 | 
							
										justify-content: space-between;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-li {
							 | 
						||
| 
								 | 
							
										padding: 30upx;
							 | 
						||
| 
								 | 
							
										border-radius: 12upx;
							 | 
						||
| 
								 | 
							
										width: 45%;
							 | 
						||
| 
								 | 
							
										margin: 0 2.5% 40upx;
							 | 
						||
| 
								 | 
							
										/* background-image: url(https://i.imgtg.com/2022/12/15/Dsef6.jpg); */
							 | 
						||
| 
								 | 
							
										background-size: cover;
							 | 
						||
| 
								 | 
							
										background-position: center;
							 | 
						||
| 
								 | 
							
										position: relative;
							 | 
						||
| 
								 | 
							
										z-index: 1;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-li::after {
							 | 
						||
| 
								 | 
							
										content: "";
							 | 
						||
| 
								 | 
							
										position: absolute;
							 | 
						||
| 
								 | 
							
										z-index: -1;
							 | 
						||
| 
								 | 
							
										background-color: inherit;
							 | 
						||
| 
								 | 
							
										width: 100%;
							 | 
						||
| 
								 | 
							
										height: 100%;
							 | 
						||
| 
								 | 
							
										left: 0;
							 | 
						||
| 
								 | 
							
										bottom: -10%;
							 | 
						||
| 
								 | 
							
										border-radius: 10upx;
							 | 
						||
| 
								 | 
							
										opacity: 0.2;
							 | 
						||
| 
								 | 
							
										transform: scale(0.9, 0.9);
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-li.cur {
							 | 
						||
| 
								 | 
							
										color: #fff;
							 | 
						||
| 
								 | 
							
										background: rgb(94, 185, 94);
							 | 
						||
| 
								 | 
							
										box-shadow: 4upx 4upx 6upx rgba(94, 185, 94, 0.4);
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-title {
							 | 
						||
| 
								 | 
							
										font-size: 32upx;
							 | 
						||
| 
								 | 
							
										font-weight: 300;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-title::first-letter {
							 | 
						||
| 
								 | 
							
										font-size: 40upx;
							 | 
						||
| 
								 | 
							
										margin-right: 4upx;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-name {
							 | 
						||
| 
								 | 
							
										font-size: 28upx;
							 | 
						||
| 
								 | 
							
										text-transform: Capitalize;
							 | 
						||
| 
								 | 
							
										margin-top: 20upx;
							 | 
						||
| 
								 | 
							
										position: relative;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-name::before {
							 | 
						||
| 
								 | 
							
										content: "";
							 | 
						||
| 
								 | 
							
										position: absolute;
							 | 
						||
| 
								 | 
							
										display: block;
							 | 
						||
| 
								 | 
							
										width: 40upx;
							 | 
						||
| 
								 | 
							
										height: 6upx;
							 | 
						||
| 
								 | 
							
										background: #fff;
							 | 
						||
| 
								 | 
							
										bottom: 0;
							 | 
						||
| 
								 | 
							
										right: 0;
							 | 
						||
| 
								 | 
							
										opacity: 0.5;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-name::after {
							 | 
						||
| 
								 | 
							
										content: "";
							 | 
						||
| 
								 | 
							
										position: absolute;
							 | 
						||
| 
								 | 
							
										display: block;
							 | 
						||
| 
								 | 
							
										width: 100upx;
							 | 
						||
| 
								 | 
							
										height: 1px;
							 | 
						||
| 
								 | 
							
										background: #fff;
							 | 
						||
| 
								 | 
							
										bottom: 0;
							 | 
						||
| 
								 | 
							
										right: 40upx;
							 | 
						||
| 
								 | 
							
										opacity: 0.3;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-name::first-letter {
							 | 
						||
| 
								 | 
							
										font-weight: bold;
							 | 
						||
| 
								 | 
							
										font-size: 36upx;
							 | 
						||
| 
								 | 
							
										margin-right: 1px;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.nav-li text {
							 | 
						||
| 
								 | 
							
										position: absolute;
							 | 
						||
| 
								 | 
							
										right: 30upx;
							 | 
						||
| 
								 | 
							
										top: 30upx;
							 | 
						||
| 
								 | 
							
										font-size: 52upx;
							 | 
						||
| 
								 | 
							
										width: 60upx;
							 | 
						||
| 
								 | 
							
										height: 60upx;
							 | 
						||
| 
								 | 
							
										text-align: center;
							 | 
						||
| 
								 | 
							
										line-height: 60upx;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.text-light {
							 | 
						||
| 
								 | 
							
										font-weight: 300;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									@keyframes show {
							 | 
						||
| 
								 | 
							
										0% {
							 | 
						||
| 
								 | 
							
											transform: translateY(-50px);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										60% {
							 | 
						||
| 
								 | 
							
											transform: translateY(40upx);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										100% {
							 | 
						||
| 
								 | 
							
											transform: translateY(0px);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									@-webkit-keyframes show {
							 | 
						||
| 
								 | 
							
										0% {
							 | 
						||
| 
								 | 
							
											transform: translateY(-50px);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										60% {
							 | 
						||
| 
								 | 
							
											transform: translateY(40upx);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										100% {
							 | 
						||
| 
								 | 
							
											transform: translateY(0px);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								</style>
							 |