|
|
@@ -8,6 +8,8 @@ import interact from './views/index/interact.vue';
|
|
|
import my from './views/index/my.vue';
|
|
|
import store from './store';
|
|
|
import http from './plugins/http';
|
|
|
+import { Capacitor, Plugins, StatusBarStyle } from '@capacitor/core';
|
|
|
+const { StatusBar } = Plugins;
|
|
|
Vue.use(Router);
|
|
|
const v = new Vue();
|
|
|
|
|
|
@@ -31,7 +33,10 @@ const router = new Router({
|
|
|
{
|
|
|
path: '/snd',
|
|
|
name: 'snd',
|
|
|
- component: snd
|
|
|
+ component: snd,
|
|
|
+ meta: {
|
|
|
+ statusBar: 'dark'
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
path: '/interact',
|
|
|
@@ -54,6 +59,74 @@ const router = new Router({
|
|
|
path: '/register',
|
|
|
name: 'register',
|
|
|
component: () => import(/* webpackChunkName: "register" */ '@/views/register.vue')
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: '/news',
|
|
|
+ name: 'news',
|
|
|
+ component: () => import(/* webpackChunkName: "news" */ '@/views/news/news.vue'),
|
|
|
+ meta: {
|
|
|
+ statusBar: 'dark'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: '/article',
|
|
|
+ name: 'article',
|
|
|
+ component: () => import(/* webpackChunkName: "article" */ '@/views/article.vue'),
|
|
|
+ meta: {
|
|
|
+ statusBar: 'dark'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: '/policy',
|
|
|
+ name: 'policy',
|
|
|
+ component: () => import(/* webpackChunkName: "policy" */ '@/views/policy.vue'),
|
|
|
+ meta: {
|
|
|
+ statusBar: 'dark'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: '/sndList',
|
|
|
+ name: 'sndList',
|
|
|
+ component: () => import(/* webpackChunkName: "sndList" */ '@/views/snd/sndList.vue'),
|
|
|
+ meta: {
|
|
|
+ statusBar: 'dark'
|
|
|
+ },
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ path: '',
|
|
|
+ redirect: 'sTech'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: 'sTech',
|
|
|
+ name: 'sTech',
|
|
|
+ component: () => import(/* webpackChunkName: "sTech" */ '@/views/snd/sTech.vue')
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: 'sProduct',
|
|
|
+ name: 'sProduct',
|
|
|
+ component: () => import(/* webpackChunkName: "sProduct" */ '@/views/snd/sProduct.vue')
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: 'sResource',
|
|
|
+ name: 'sResource',
|
|
|
+ component: () => import(/* webpackChunkName: "sResource" */ '@/views/snd/sResource.vue')
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: 'dTech',
|
|
|
+ name: 'dTech',
|
|
|
+ component: () => import(/* webpackChunkName: "dTech" */ '@/views/snd/dTech.vue')
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: 'dProduct',
|
|
|
+ name: 'dProduct',
|
|
|
+ component: () => import(/* webpackChunkName: "dProduct" */ '@/views/snd/dProduct.vue')
|
|
|
+ },
|
|
|
+ {
|
|
|
+ path: 'dFinancial',
|
|
|
+ name: 'dFinancial',
|
|
|
+ component: () => import(/* webpackChunkName: "dFinancial" */ '@/views/snd/dFinancial.vue')
|
|
|
+ }
|
|
|
+ ]
|
|
|
}
|
|
|
]
|
|
|
});
|
|
|
@@ -62,6 +135,9 @@ let history = { '/home': 0 };
|
|
|
let historyCount = 0;
|
|
|
const tabRoutePath = ['/home', '/snd', '/interact', '/my'];
|
|
|
router.beforeEach((to, from, next) => {
|
|
|
+ if (!(store.state.userInfo && store.state.userInfo.id)) {
|
|
|
+ store.dispatch('updateUserInfo');
|
|
|
+ }
|
|
|
const f = arg => {
|
|
|
let direction = '';
|
|
|
const toHome = tabRoutePath.indexOf(to.path) > -1;
|
|
|
@@ -176,4 +252,19 @@ router.beforeEach((to, from, next) => {
|
|
|
f();
|
|
|
}
|
|
|
});
|
|
|
+
|
|
|
+router.afterEach((to, from) => {
|
|
|
+ const statusBarAvailable = Capacitor.isPluginAvailable('StatusBar');
|
|
|
+ if (statusBarAvailable) {
|
|
|
+ if ('dark' === to.meta.statusBar) {
|
|
|
+ StatusBar.setStyle({
|
|
|
+ style: StatusBarStyle.Light
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ StatusBar.setStyle({
|
|
|
+ style: StatusBarStyle.Dark
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+});
|
|
|
export default router;
|