code refactor
This commit is contained in:
+37
-29
@@ -33,6 +33,14 @@ import CategoryPresetPage from '../views/mobile/categories/Preset.vue';
|
|||||||
|
|
||||||
import TagListPage from '../views/mobile/tags/List.vue';
|
import TagListPage from '../views/mobile/tags/List.vue';
|
||||||
|
|
||||||
|
function asyncResolve(component) {
|
||||||
|
return function({ resolve }) {
|
||||||
|
return resolve({
|
||||||
|
component: component
|
||||||
|
});
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
function checkLogin({ router, resolve, reject }) {
|
function checkLogin({ router, resolve, reject }) {
|
||||||
if (!userState.isUserLogined()) {
|
if (!userState.isUserLogined()) {
|
||||||
reject();
|
reject();
|
||||||
@@ -102,7 +110,7 @@ function checkNotLogin({ router, resolve, reject }) {
|
|||||||
const routes = [
|
const routes = [
|
||||||
{
|
{
|
||||||
path: '/',
|
path: '/',
|
||||||
async: ({resolve}) => resolve({component: HomePage}),
|
async: asyncResolve(HomePage),
|
||||||
beforeEnter: [checkLogin],
|
beforeEnter: [checkLogin],
|
||||||
options: {
|
options: {
|
||||||
animate: false,
|
animate: false,
|
||||||
@@ -110,7 +118,7 @@ const routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/login',
|
path: '/login',
|
||||||
async: ({resolve}) => resolve({component: LoginPage}),
|
async: asyncResolve(LoginPage),
|
||||||
beforeEnter: [checkNotLogin],
|
beforeEnter: [checkNotLogin],
|
||||||
options: {
|
options: {
|
||||||
animate: false,
|
animate: false,
|
||||||
@@ -118,7 +126,7 @@ const routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/signup',
|
path: '/signup',
|
||||||
async: ({resolve}) => resolve({component: SignUpPage}),
|
async: asyncResolve(SignUpPage),
|
||||||
beforeEnter: [checkNotLogin],
|
beforeEnter: [checkNotLogin],
|
||||||
options: {
|
options: {
|
||||||
animate: false,
|
animate: false,
|
||||||
@@ -126,7 +134,7 @@ const routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/unlock',
|
path: '/unlock',
|
||||||
async: ({resolve}) => resolve({component: UnlockPage}),
|
async: asyncResolve(UnlockPage),
|
||||||
beforeEnter: [checkLocked],
|
beforeEnter: [checkLocked],
|
||||||
options: {
|
options: {
|
||||||
animate: false,
|
animate: false,
|
||||||
@@ -134,127 +142,127 @@ const routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/transaction/list',
|
path: '/transaction/list',
|
||||||
async: ({resolve}) => resolve({component: TransactionListPage}),
|
async: asyncResolve(TransactionListPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/transaction/add',
|
path: '/transaction/add',
|
||||||
async: ({resolve}) => resolve({component: TransactionEditPage}),
|
async: asyncResolve(TransactionEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/transaction/edit',
|
path: '/transaction/edit',
|
||||||
async: ({resolve}) => resolve({component: TransactionEditPage}),
|
async: asyncResolve(TransactionEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/transaction/detail',
|
path: '/transaction/detail',
|
||||||
async: ({resolve}) => resolve({component: TransactionEditPage}),
|
async: asyncResolve(TransactionEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/account/list',
|
path: '/account/list',
|
||||||
async: ({resolve}) => resolve({component: AccountListPage}),
|
async: asyncResolve(AccountListPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/account/add',
|
path: '/account/add',
|
||||||
async: ({resolve}) => resolve({component: AccountEditPage}),
|
async: asyncResolve(AccountEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/account/edit',
|
path: '/account/edit',
|
||||||
async: ({resolve}) => resolve({component: AccountEditPage}),
|
async: asyncResolve(AccountEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/statistic/transaction',
|
path: '/statistic/transaction',
|
||||||
async: ({resolve}) => resolve({component: StatisticsTransactionPage}),
|
async: asyncResolve(StatisticsTransactionPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/statistic/settings',
|
path: '/statistic/settings',
|
||||||
async: ({resolve}) => resolve({component: StatisticsSettingsPage}),
|
async: asyncResolve(StatisticsSettingsPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/statistic/filter/account',
|
path: '/statistic/filter/account',
|
||||||
async: ({resolve}) => resolve({component: StatisticsAccountFilterSettingsPage}),
|
async: asyncResolve(StatisticsAccountFilterSettingsPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/statistic/filter/category',
|
path: '/statistic/filter/category',
|
||||||
async: ({resolve}) => resolve({component: StatisticsCategoryFilterSettingsPage}),
|
async: asyncResolve(StatisticsCategoryFilterSettingsPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/settings',
|
path: '/settings',
|
||||||
async: ({resolve}) => resolve({component: SettingsPage}),
|
async: asyncResolve(SettingsPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/app_lock',
|
path: '/app_lock',
|
||||||
async: ({resolve}) => resolve({component: ApplicationLockPage}),
|
async: asyncResolve(ApplicationLockPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/exchange_rates',
|
path: '/exchange_rates',
|
||||||
async: ({resolve}) => resolve({component: ExchangeRatesPage}),
|
async: asyncResolve(ExchangeRatesPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/about',
|
path: '/about',
|
||||||
async: ({resolve}) => resolve({component: AboutPage}),
|
async: asyncResolve(AboutPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/user/profile',
|
path: '/user/profile',
|
||||||
async: ({resolve}) => resolve({component: UserProfilePage}),
|
async: asyncResolve(UserProfilePage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/user/data/management',
|
path: '/user/data/management',
|
||||||
async: ({resolve}) => resolve({component: DataManagementPage}),
|
async: asyncResolve(DataManagementPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/user/2fa',
|
path: '/user/2fa',
|
||||||
async: ({resolve}) => resolve({component: TwoFactorAuthPage}),
|
async: asyncResolve(TwoFactorAuthPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/user/sessions',
|
path: '/user/sessions',
|
||||||
async: ({resolve}) => resolve({component: SessionListPage}),
|
async: asyncResolve(SessionListPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/category/all',
|
path: '/category/all',
|
||||||
async: ({resolve}) => resolve({component: CategoryAllPage}),
|
async: asyncResolve(CategoryAllPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/category/list',
|
path: '/category/list',
|
||||||
async: ({resolve}) => resolve({component: CategoryListPage}),
|
async: asyncResolve(CategoryListPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/category/add',
|
path: '/category/add',
|
||||||
async: ({resolve}) => resolve({component: CategoryEditPage}),
|
async: asyncResolve(CategoryEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/category/edit',
|
path: '/category/edit',
|
||||||
async: ({resolve}) => resolve({component: CategoryEditPage}),
|
async: asyncResolve(CategoryEditPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/category/preset',
|
path: '/category/preset',
|
||||||
async: ({resolve}) => resolve({component: CategoryPresetPage}),
|
async: asyncResolve(CategoryPresetPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/tag/list',
|
path: '/tag/list',
|
||||||
async: ({resolve}) => resolve({component: TagListPage}),
|
async: asyncResolve(TagListPage),
|
||||||
beforeEnter: [checkLogin]
|
beforeEnter: [checkLogin]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user