Compare commits

..

No commits in common. "9b05c19b76b8b7f49aea37ab850bf7918953fabc" and "60a3d6d6733a7ebaa52daa394a75c3dfb89d152d" have entirely different histories.

9 changed files with 437 additions and 476 deletions

View File

@ -1,10 +0,0 @@
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = false
max_line_length = 120
tab_width = 4

34
App.vue
View File

@ -1,37 +1,37 @@
<script setup> <script setup>
import config from './config' import config from './config'
import {getToken} from '@/utils/auth' import { getToken } from '@/utils/auth'
import {useConfigStore} from '@/store' import { useConfigStore } from '@/store'
import {getCurrentInstance} from "vue" import { getCurrentInstance } from "vue"
import {onLaunch} from '@dcloudio/uni-app' import { onLaunch } from '@dcloudio/uni-app'
const {proxy} = getCurrentInstance() const { proxy } = getCurrentInstance()
onLaunch(() => { onLaunch(() => {
initApp() initApp()
}) })
// //
function initApp() { function initApp() {
// //
initConfig() initConfig()
// //
//#ifdef H5 //#ifdef H5
checkLogin() checkLogin()
//#endif //#endif
} }
function initConfig() { function initConfig() {
useConfigStore().setConfig(config) useConfigStore().setConfig(config)
} }
function checkLogin() { function checkLogin() {
if (!getToken()) { if (!getToken()) {
proxy.$tab.reLaunch('/pages/login') proxy.$tab.reLaunch('/pages/login')
} }
} }
</script> </script>
<style lang="scss"> <style lang="scss">
@import '@/static/scss/index.scss' @import '@/static/scss/index.scss'
</style> </style>

View File

@ -1,29 +1,29 @@
// 应用全局配置 // 应用全局配置
export default { export default {
// baseUrl: 'https://vue.ruoyi.vip/prod-api', // // baseUrl: 'https://vue.ruoyi.vip/prod-api', //
// baseUrl: '/prod-api', //前后端分离版的接口地址,转发代理 设置在了manifest.json文件中 // baseUrl: '/prod-api', //前后端分离版的接口地址,转发代理 设置在了manifest.json文件中
// baseUrl: 'http://192.168.3.27:18090', //前后端分离版的接口地址 // baseUrl: 'http://192.168.3.27:18090', //前后端分离版的接口地址
baseUrl: 'http://106.15.139.36:18090', //前后端分离版的接口地址 baseUrl: 'http://106.15.139.36:18090', //前后端分离版的接口地址
//测试提交 //测试提交
// 应用信息 // 应用信息
appInfo: { appInfo: {
// 应用名称 // 应用名称
name: "ruoyi-app", name: "ruoyi-app",
// 应用版本 // 应用版本
version: "1.2.0", version: "1.2.0",
// 应用logo // 应用logo
logo: "/static/logo.png", logo: "/static/logo.png",
// 官方网站 // 官方网站
site_url: "http://ruoyi.vip", site_url: "http://ruoyi.vip",
// 政策协议 // 政策协议
agreements: [{ agreements: [{
title: "隐私政策", title: "隐私政策",
url: "https://ruoyi.vip/protocol.html" url: "https://ruoyi.vip/protocol.html"
}, },
{ {
title: "用户服务协议", title: "用户服务协议",
url: "https://ruoyi.vip/protocol.html" url: "https://ruoyi.vip/protocol.html"
} }
] ]
} }
} }

47
main.js
View File

@ -1,35 +1,36 @@
// main.js // main.js
import {createSSRApp} from 'vue' import { createSSRApp } from 'vue'
import App from './App' import App from './App'
import {install} from './plugins' // 自定义插件 import store from './store' // Vuex store如果还在用
import './permission' // 路由权限 import { install } from './plugins' // 自定义插件
import {useDict} from '@/utils/dict' import './permission' // 路由权限
import { useDict } from '@/utils/dict'
// import { createPinia } from 'pinia' // import { createPinia } from 'pinia'
import * as Pinia from 'pinia'; import * as Pinia from 'pinia';
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate' import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
export function createApp() { export function createApp() {
const app = createSSRApp(App) const app = createSSRApp(App)
// const pinia = createPinia() // const pinia = createPinia()
const pinia = Pinia.createPinia() const pinia = Pinia.createPinia()
// ✅ 安全注册持久化插件 // ✅ 安全注册持久化插件
if (piniaPluginPersistedstate) { if (piniaPluginPersistedstate) {
pinia.use(piniaPluginPersistedstate) pinia.use(piniaPluginPersistedstate)
} else { } else {
console.warn('pinia-plugin-persistedstate not found, persistence may not work') console.warn('pinia-plugin-persistedstate not found, persistence may not work')
} }
app.use(pinia) app.use(pinia)
// app.use(store) // 如果你还在用 Vuex否则可删除 // app.use(store) // 如果你还在用 Vuex否则可删除
// 挂载全局方法 // 挂载全局方法
app.config.globalProperties.useDict = useDict app.config.globalProperties.useDict = useDict
// 安装其他插件 // 安装其他插件
install(app) install(app)
return { return {
app, app,
Pinia Pinia
} }
} }

View File

@ -1,23 +1,23 @@
{ {
"name": "若依移动端", "name" : "若依移动端",
"appid": "__UNI__1863D69", "appid" : "__UNI__1863D69",
"description": "", "description" : "",
"versionName": "1.2.0", "versionName" : "1.2.0",
"versionCode": "100", "versionCode" : "100",
"transformPx": false, "transformPx" : false,
"app-plus": { "app-plus" : {
"usingComponents": true, "usingComponents" : true,
"nvueCompiler": "uni-app", "nvueCompiler" : "uni-app",
"splashscreen": { "splashscreen" : {
"alwaysShowBeforeRender": true, "alwaysShowBeforeRender" : true,
"waiting": true, "waiting" : true,
"autoclose": true, "autoclose" : true,
"delay": 0 "delay" : 0
}, },
"modules": {}, "modules" : {},
"distribute": { "distribute" : {
"android": { "android" : {
"permissions": [ "permissions" : [
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>", "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>", "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>", "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
@ -35,29 +35,29 @@
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>" "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
] ]
}, },
"ios": { "ios" : {
"dSYMs": false "dSYMs" : false
}, },
"sdkConfigs": {} "sdkConfigs" : {}
} }
}, },
"quickapp": {}, "quickapp" : {},
"mp-weixin": { "mp-weixin" : {
"appid": "wxccd7e2a0911b3397", "appid" : "wxccd7e2a0911b3397",
"setting": { "setting" : {
"urlCheck": false, "urlCheck" : false,
"es6": false, "es6" : false,
"minified": true, "minified" : true,
"postcss": true "postcss" : true
}, },
"optimization": { "optimization" : {
"subPackages": true "subPackages" : true
}, },
"usingComponents": true "usingComponents" : true
}, },
"vueVersion": "3", "vueVersion" : "3",
"h5": { "h5" : {
"template": "static/index.html" "template" : "static/index.html"
// "devServer" : { // "devServer" : {
// "port" : 30088, // "port" : 30088,
// "https" : false, // "https" : false,
@ -75,11 +75,11 @@
// } // }
// } // }
// } // }
}, },
"title": "RuoYi-App", "title" : "RuoYi-App",
"router": { "router" : {
"mode": "hash", "mode" : "hash",
"base": "./" "base" : "./"
}
} }
} }
}

View File

@ -1,5 +1,5 @@
{ {
"dependencies": { "dependencies": {
"pinia-plugin-persistedstate": "^4.5.0" "pinia-plugin-persistedstate": "^4.5.0"
} }
} }

View File

@ -1,184 +1,155 @@
{ {
"pages": [ "pages": [{
{ "path": "pages/login",
"path": "pages/login", "style": {
"style": { "navigationBarTitleText": "登录"
"navigationBarTitleText": "登录"
}
},
{
"path": "pages/register",
"style": {
"navigationBarTitleText": "注册"
}
},
{
"path": "pages/index",
"style": {
"navigationBarTitleText": "若依移动端框架",
"navigationStyle": "custom"
}
},
{
"path": "pages/work/index",
"style": {
"navigationBarTitleText": "工作台"
}
},
{
"path": "pages/work/OrderManager/index",
"style": {
"navigationBarTitleText": "订单管理"
}
},
{
"path": "pages/work/BusinessApproval/index",
"style": {
"navigationBarTitleText": "商务审批"
}
},
{
"path": "pages/work/FinancialApproval/index",
"style": {
"navigationBarTitleText": "财务审批"
}
},
{
"path": "pages/work/OrderApproval/index",
"style": {
"navigationBarTitleText": "订单审核"
}
},
{
"path": "pages/mine/index",
"style": {
"navigationBarTitleText": "我的"
}
},
{
"path": "pages/mine/avatar/index",
"style": {
"navigationBarTitleText": "修改头像"
}
},
{
"path": "pages/mine/info/index",
"style": {
"navigationBarTitleText": "个人信息"
}
},
{
"path": "pages/mine/info/edit",
"style": {
"navigationBarTitleText": "编辑资料"
}
},
{
"path": "pages/mine/pwd/index",
"style": {
"navigationBarTitleText": "修改密码"
}
},
{
"path": "pages/mine/setting/index",
"style": {
"navigationBarTitleText": "应用设置"
}
},
{
"path": "pages/mine/help/index",
"style": {
"navigationBarTitleText": "常见问题"
}
},
{
"path": "pages/mine/about/index",
"style": {
"navigationBarTitleText": "关于我们"
}
},
{
"path": "pages/common/webview/index",
"style": {
"navigationBarTitleText": "浏览网页"
}
},
{
"path": "pages/common/textview/index",
"style": {
"navigationBarTitleText": "浏览文本"
}
},
{
"path": "pages/work/BusinessApproval/OrderDetail",
"style": {
"navigationBarTitleText": "商务订单详情"
}
},
{
"path": "pages/work/FinancialApproval/OrderDetail",
"style": {
"navigationBarTitleText": "财务订单详情"
}
},
{
"path": "pages/work/OrderApproval/OrderDetail",
"style": {
"navigationBarTitleText": "订单审批详情"
}
},
{
"path": "pages/work/OrderManager/components/LookData",
"style": {
"navigationBarTitleText": "订单详情",
"props": true
// props
}
},
{
"path": "pages/work/OrderManager/components/NewAdd",
"style": {
"navigationBarTitleText": "新增订单"
}
},
{
"path": "pages/work/OrderManager/components/EditData",
"style": {
"navigationBarTitleText": "修改订单",
"props": true
// props
}
}
],
"tabBar": {
"color": "#000000",
"selectedColor": "#000000",
"borderStyle": "white",
"backgroundColor": "#ffffff",
"list": [
{
"pagePath": "pages/index",
"iconPath": "static/images/tabbar/home.png",
"selectedIconPath": "static/images/tabbar/home_.png",
"text": "首页"
},
{
"pagePath": "pages/work/index",
"iconPath": "static/images/tabbar/work.png",
"selectedIconPath": "static/images/tabbar/work_.png",
"text": "工作台"
},
{
"pagePath": "pages/mine/index",
"iconPath": "static/images/tabbar/mine.png",
"selectedIconPath": "static/images/tabbar/mine_.png",
"text": "我的"
}
]
},
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "RuoYi",
"navigationBarBackgroundColor": "#FFFFFF"
} }
}, {
"path": "pages/register",
"style": {
"navigationBarTitleText": "注册"
}
}, {
"path": "pages/index",
"style": {
"navigationBarTitleText": "若依移动端框架",
"navigationStyle": "custom"
}
}, {
"path": "pages/work/index",
"style": {
"navigationBarTitleText": "工作台"
}
}, {
"path": "pages/work/OrderManager/index",
"style": {
"navigationBarTitleText": "订单管理"
}
}, {
"path": "pages/work/BusinessApproval/index",
"style": {
"navigationBarTitleText": "商务审批"
}
}, {
"path": "pages/work/FinancialApproval/index",
"style": {
"navigationBarTitleText": "财务审批"
}
}, {
"path": "pages/work/OrderApproval/index",
"style": {
"navigationBarTitleText": "订单审核"
}
},{
"path": "pages/mine/index",
"style": {
"navigationBarTitleText": "我的"
}
}, {
"path": "pages/mine/avatar/index",
"style": {
"navigationBarTitleText": "修改头像"
}
}, {
"path": "pages/mine/info/index",
"style": {
"navigationBarTitleText": "个人信息"
}
}, {
"path": "pages/mine/info/edit",
"style": {
"navigationBarTitleText": "编辑资料"
}
}, {
"path": "pages/mine/pwd/index",
"style": {
"navigationBarTitleText": "修改密码"
}
}, {
"path": "pages/mine/setting/index",
"style": {
"navigationBarTitleText": "应用设置"
}
}, {
"path": "pages/mine/help/index",
"style": {
"navigationBarTitleText": "常见问题"
}
}, {
"path": "pages/mine/about/index",
"style": {
"navigationBarTitleText": "关于我们"
}
}, {
"path": "pages/common/webview/index",
"style": {
"navigationBarTitleText": "浏览网页"
}
}, {
"path": "pages/common/textview/index",
"style": {
"navigationBarTitleText": "浏览文本"
}
},{
"path": "pages/work/BusinessApproval/OrderDetail",
"style": {
"navigationBarTitleText": "商务订单详情"
}
},{
"path": "pages/work/FinancialApproval/OrderDetail",
"style": {
"navigationBarTitleText": "财务订单详情"
}
},{
"path": "pages/work/OrderApproval/OrderDetail",
"style": {
"navigationBarTitleText": "订单审批详情"
}
},{
"path": "pages/work/OrderManager/components/LookData",
"style": {
"navigationBarTitleText": "订单详情",
"props": true // props
}
},{
"path": "pages/work/OrderManager/components/NewAdd",
"style": {
"navigationBarTitleText": "新增订单"
}
},{
"path": "pages/work/OrderManager/components/EditData",
"style": {
"navigationBarTitleText": "修改订单",
"props": true // props
}
}],
"tabBar": {
"color": "#000000",
"selectedColor": "#000000",
"borderStyle": "white",
"backgroundColor": "#ffffff",
"list": [{
"pagePath": "pages/index",
"iconPath": "static/images/tabbar/home.png",
"selectedIconPath": "static/images/tabbar/home_.png",
"text": "首页"
}, {
"pagePath": "pages/work/index",
"iconPath": "static/images/tabbar/work.png",
"selectedIconPath": "static/images/tabbar/work_.png",
"text": "工作台"
}, {
"pagePath": "pages/mine/index",
"iconPath": "static/images/tabbar/mine.png",
"selectedIconPath": "static/images/tabbar/mine_.png",
"text": "我的"
}
]
},
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "RuoYi",
"navigationBarBackgroundColor": "#FFFFFF"
}
} }

View File

@ -1,169 +1,167 @@
<template> <template>
<view class="work-container"> <view class="work-container">
<!-- 轮播图 --> <!-- 轮播图 -->
<uni-swiper-dot :current="current" :info="data" class="uni-swiper-dot-box" field="content"> <uni-swiper-dot class="uni-swiper-dot-box" :info="data" :current="current" field="content">
<swiper :current="swiperDotIndex" class="swiper-box" @change="changeSwiper"> <swiper class="swiper-box" :current="swiperDotIndex" @change="changeSwiper">
<swiper-item v-for="(item, index) in data" :key="index"> <swiper-item v-for="(item, index) in data" :key="index">
<view class="swiper-item" @click="clickBannerItem(item)"> <view class="swiper-item" @click="clickBannerItem(item)">
<image :draggable="false" :src="item.image" mode="aspectFill"/> <image :src="item.image" mode="aspectFill" :draggable="false" />
</view> </view>
</swiper-item> </swiper-item>
</swiper> </swiper>
</uni-swiper-dot> </uni-swiper-dot>
<!-- 宫格组件 --> <!-- 宫格组件 -->
<uni-section title="系统管理" type="line"></uni-section> <uni-section title="系统管理" type="line"></uni-section>
<view class="grid-body"> <view class="grid-body">
<uni-grid :column="4" :showBorder="false" @change="changeGrid"> <uni-grid :column="4" :showBorder="false" @change="changeGrid">
<uni-grid-item @click="gotoOrderManager"> <uni-grid-item @click="gotoOrderManager">
<view class="grid-item-box"> <view class="grid-item-box" >
<uni-icons size="30" type="person-filled"></uni-icons> <uni-icons type="person-filled" size="30"></uni-icons>
<text class="text">订单管理</text> <text class="text">订单管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item @click="gotoOrder"> <uni-grid-item @click="gotoBusiness">
<view class="grid-item-box"> <view class="grid-item-box" >
<uni-icons size="30" type="person-filled"></uni-icons> <uni-icons type="person-filled" size="30"></uni-icons>
<text class="text">订单审核</text> <text class="text">商务审批</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item @click="gotoFinalcial"> <uni-grid-item @click="gotoFinalcial">
<view class="grid-item-box"> <view class="grid-item-box" >
<uni-icons size="30" type="person-filled"></uni-icons> <uni-icons type="person-filled" size="30"></uni-icons>
<text class="text">财务审批</text> <text class="text">财务审批</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item @click="gotoBusiness"> <uni-grid-item @click="gotoOrder">
<view class="grid-item-box"> <view class="grid-item-box" >
<uni-icons size="30" type="person-filled"></uni-icons> <uni-icons type="person-filled" size="30"></uni-icons>
<text class="text">商务审批</text> <text class="text">订单审核</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box" @click="jiansheing"> <view class="grid-item-box" @click="jiansheing">
<uni-icons size="30" type="staff-filled"></uni-icons> <uni-icons type="staff-filled" size="30"></uni-icons>
<text class="text">角色管理</text> <text class="text">角色管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box" @click="jiansheing"> <view class="grid-item-box" @click="jiansheing">
<uni-icons size="30" type="color"></uni-icons> <uni-icons type="color" size="30"></uni-icons>
<text class="text">菜单管理</text> <text class="text">菜单管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box" @click="jiansheing"> <view class="grid-item-box" @click="jiansheing">
<uni-icons size="30" type="settings-filled"></uni-icons> <uni-icons type="settings-filled" size="30"></uni-icons>
<text class="text">部门管理</text> <text class="text">部门管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box" @click="jiansheing"> <view class="grid-item-box" @click="jiansheing">
<uni-icons size="30" type="heart-filled"></uni-icons> <uni-icons type="heart-filled" size="30"></uni-icons>
<text class="text">岗位管理</text> <text class="text">岗位管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box" @click="jiansheing"> <view class="grid-item-box" @click="jiansheing">
<uni-icons size="30" type="bars"></uni-icons> <uni-icons type="bars" size="30"></uni-icons>
<text class="text">字典管理</text> <text class="text">字典管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box" @click="jiansheing"> <view class="grid-item-box" @click="jiansheing">
<uni-icons size="30" type="gear-filled"></uni-icons> <uni-icons type="gear-filled" size="30"></uni-icons>
<text class="text">参数设置</text> <text class="text">参数设置</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box"> <view class="grid-item-box">
<uni-icons size="30" type="chat-filled"></uni-icons> <uni-icons type="chat-filled" size="30"></uni-icons>
<text class="text">通知公告</text> <text class="text">通知公告</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
<uni-grid-item> <uni-grid-item>
<view class="grid-item-box"> <view class="grid-item-box">
<uni-icons size="30" type="wallet-filled"></uni-icons> <uni-icons type="wallet-filled" size="30"></uni-icons>
<text class="text">日志管理</text> <text class="text">日志管理</text>
</view> </view>
</uni-grid-item> </uni-grid-item>
</uni-grid> </uni-grid>
</view>
</view> </view>
</view>
</template> </template>
<script setup> <script setup>
import {getCurrentInstance, ref} from "vue" import { ref, getCurrentInstance } from "vue"
const {proxy} = getCurrentInstance() const { proxy } = getCurrentInstance()
const current = ref(0) const current = ref(0)
const swiperDotIndex = ref(0) const swiperDotIndex = ref(0)
const data = ref([{image: '/static/images/banner/banner02.jpg'}, {image: '/static/images/banner/banner03.jpg'}]) const data = ref([{ image: '/static/images/banner/banner02.jpg' }, { image: '/static/images/banner/banner03.jpg' }])
function clickBannerItem(item) { function clickBannerItem(item) {
console.info(item) console.info(item)
} }
function changeSwiper(e) { function changeSwiper(e) {
current.value = e.detail.current current.value = e.detail.current
} }
function changeGrid(e) { function changeGrid(e) {
// proxy.$modal.showToast('~') // proxy.$modal.showToast('~')
} }
function jiansheing(e) {
function jiansheing(e) {
proxy.$modal.showToast('模块建设中~') proxy.$modal.showToast('模块建设中~')
} }
const gotoBusiness = () => { const gotoBusiness = () =>{
uni.navigateTo({ uni.navigateTo({
url: '/pages/work/BusinessApproval/index' url:'/pages/work/BusinessApproval/index'
}) })
} }
const gotoFinalcial = () => { const gotoFinalcial = () =>{
uni.navigateTo({ uni.navigateTo({
url: '/pages/work/FinancialApproval/index' url:'/pages/work/FinancialApproval/index'
}) })
} }
const gotoOrder = () => { const gotoOrder = () =>{
uni.navigateTo({ uni.navigateTo({
url: '/pages/work/OrderApproval/index' url:'/pages/work/OrderApproval/index'
}) })
} }
const gotoOrderManager = () => { const gotoOrderManager = () =>{
uni.navigateTo({ uni.navigateTo({
url: '/pages/work/OrderManager/index' url:'/pages/work/OrderManager/index'
}) })
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
page { page {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
box-sizing: border-box; box-sizing: border-box;
background-color: #fff; background-color: #fff;
min-height: 100%; min-height: 100%;
height: auto; height: auto;
} }
view { view {
font-size: 14px; font-size: 14px;
line-height: inherit; line-height: inherit;
} }
/* #endif */
/* #endif */ .text {
.text {
text-align: center; text-align: center;
font-size: 26rpx; font-size: 26rpx;
margin-top: 10rpx; margin-top: 10rpx;
} }
.grid-item-box { .grid-item-box {
flex: 1; flex: 1;
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
display: flex; display: flex;
@ -172,22 +170,23 @@ view {
align-items: center; align-items: center;
justify-content: center; justify-content: center;
padding: 15px 0; padding: 15px 0;
} }
.uni-margin-wrap { .uni-margin-wrap {
width: 690rpx; width: 690rpx;
width: 100%;; width: 100%;
} ;
}
.swiper { .swiper {
height: 300rpx; height: 300rpx;
} }
.swiper-box { .swiper-box {
height: 150px; height: 150px;
} }
.swiper-item { .swiper-item {
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
display: flex; display: flex;
/* #endif */ /* #endif */
@ -197,19 +196,19 @@ view {
color: #fff; color: #fff;
height: 300rpx; height: 300rpx;
line-height: 300rpx; line-height: 300rpx;
} }
@media screen and (min-width: 500px) { @media screen and (min-width: 500px) {
.uni-swiper-dot-box { .uni-swiper-dot-box {
width: 400px; width: 400px;
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
margin: 0 auto; margin: 0 auto;
/* #endif */ /* #endif */
margin-top: 8px; margin-top: 8px;
} }
.image { .image {
width: 100%; width: 100%;
} }
} }
</style> </style>

View File

@ -1,39 +1,39 @@
import {getToken} from '@/utils/auth' import { getToken } from '@/utils/auth'
// 登录页面 // 登录页面
const loginPage = "/pages/login" const loginPage = "/pages/login"
// 页面白名单 // 页面白名单
const whiteList = [ const whiteList = [
'/pages/login', '/pages/register', '/pages/common/webview/index' '/pages/login', '/pages/register', '/pages/common/webview/index'
] ]
// 检查地址白名单 // 检查地址白名单
function checkWhite(url) { function checkWhite(url) {
const path = url.split('?')[0] const path = url.split('?')[0]
return whiteList.indexOf(path) !== -1 return whiteList.indexOf(path) !== -1
} }
// 页面跳转验证拦截器 // 页面跳转验证拦截器
let list = ["navigateTo", "redirectTo", "reLaunch", "switchTab"] let list = ["navigateTo", "redirectTo", "reLaunch", "switchTab"]
list.forEach(item => { list.forEach(item => {
uni.addInterceptor(item, { uni.addInterceptor(item, {
invoke(to) { invoke(to) {
if (getToken()) { if (getToken()) {
if (to.url === loginPage) { if (to.url === loginPage) {
uni.reLaunch({url: "/"}) uni.reLaunch({ url: "/" })
}
return true
} else {
if (checkWhite(to.url)) {
return true
}
uni.reLaunch({url: loginPage})
return false
}
},
fail(err) {
console.log(err)
} }
}) return true
} else {
if (checkWhite(to.url)) {
return true
}
uni.reLaunch({ url: loginPage })
return false
}
},
fail(err) {
console.log(err)
}
})
}) })