import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) const routes = [ { path: '*', redirect: '/404' }, { path: '/loan', redirect: '/' }, { path: '/404', name: '404', component: () => import(/* webpackChunkName: "pageNotFound" */ '../page/404') }, { path: '/', // 我的申请记录 name: 'Loan', component: () => import(/* webpackChunkName: "loan_home" */ '../views/loan/home'), meta: { isUseCache: false, keepAlive: true } }, { path: '/loan/explain/:orderProductId', // 贷款介绍 name: 'loanExplain', component: () => import(/* webpackChunkName: "loan_goods" */ '../views/loan/explain'), props: true }, { path: '/loan/apply/:orderProductId', // 基本信息填写 name: 'loanApply', component: () => import(/* webpackChunkName: "loan_apply" */ '../views/loan/apply'), meta: { isUseCache: false, keepAlive: true }, props: true }, { path: '/loan/detail/:id', // 进度查询:贷款详情页 name: 'loanDetail', component: () => import(/* webpackChunkName: "loan_detail" */ '../views/loan/detail'), props: true }, { path: '/loan/attest/:id', // 上传资料 name: 'loanAttest', component: () => import(/* webpackChunkName: "loan_attest" */ '../views/loan/attest'), props: true }, { path: '/loan/bespeak/:id', // 预约现场办理时间 name: 'loanBespeak', component: () => import(/* webpackChunkName: "loan_bespeak" */ '../views/loan/bespeak'), props: true }, { path: '/loan/privacy', // 隐私协议 name: 'loanPrivacy', component: () => import(/* webpackChunkName: "loan_privacy" */ '../views/loan/privacy') }, { path: '/loan/agreement', // 协议 name: 'loanAgreement', component: () => import(/* webpackChunkName: "loan_agreement" */ '../views/loan/agreement') }, { path: '/loan/help', // 还款助手 name: 'loanHelp', component: () => import(/* webpackChunkName: "loan_help" */ '../views/loan/help') }, { path: '/loan/about', // 了解我们 name: 'loanAbout', component: () => import(/* webpackChunkName: "loan_about" */ '../views/loan/about') }, { path: '/partner', // 我的销售 component: () => import(/* webpackChunkName: "partner_home" */ '../views/partner/home'), children: [ { path: '', // 推广 name: 'partnerMarketing', component: () => import(/* webpackChunkName: "partner_marketing" */ '../views/partner/marketing'), meta: { isUseCache: false, keepAlive: true } }, { path: 'mine', // 我的 name: 'partnerMine', component: () => import(/* webpackChunkName: "partner_mine" */ '../views/partner/mine') } ] }, { path: '/partner/goods', // 贷款产品 name: 'partnerGoods', component: () => import(/* webpackChunkName: "partner_goods" */ '../views/partner/goods'), meta: { isUseCache: false, keepAlive: true } }, { path: '/partner/sale', // 放款总额 name: 'partnerSale', component: () => import(/* webpackChunkName: "partner_sale" */ '../views/partner/sale'), meta: { isUseCache: false, keepAlive: true } }, { path: '/partner/wallet', // 我的钱包 name: 'partnerWallet', component: () => import(/* webpackChunkName: "partner_wallet" */ '../views/partner/wallet'), meta: { isUseCache: false, keepAlive: true } }, { path: '/partner/business', // 我的合伙人 name: 'partnerBusiness', component: () => import(/* webpackChunkName: "partner_business" */ '../views/partner/business'), meta: { isUseCache: false, keepAlive: true } }, { path: '/partner/login', // 登录 name: 'partnerLogin', component: () => import(/* webpackChunkName: "partner_login" */ '../views/partner/login') }, { path: '/partner/explain', // 成为合伙人-介绍 name: 'partnerExplain', component: () => import(/* webpackChunkName: "partner_explain" */ '../views/partner/explain') }, { path: '/partner/join', // 成为合伙人-申请资料填写 name: 'partnerJoin', component: () => import(/* webpackChunkName: "partner_join" */ '../views/partner/join'), meta: { isUseCache: false, keepAlive: true }, props: true }, { path: '/partner/detail', // 申请进度 name: 'partnerDetail', component: () => import(/* webpackChunkName: "partner_detail" */ '../views/partner/detail') }, { path: '/partner/compact', // 签约 name: 'partnerCompact', component: () => import(/* webpackChunkName: "partner_compact" */ '../views/partner/compact') }, { path: '/partner/privacy', // 隐私协议 name: 'partnerPrivacy', component: () => import(/* webpackChunkName: "partner_privacy" */ '../views/partner/privacy') }, { path: '/partner/agreement', // 协议 name: 'partnerAgreement', component: () => import(/* webpackChunkName: "partner_agreement" */ '../views/partner/agreement') } ] const router = new VueRouter({ mode: 'history', routes, scrollBehavior (to, from, savedPosition) { // keep-alive 返回缓存页面后记录浏览位置 if (savedPosition && to.meta.keepAlive) { return savedPosition } // 异步滚动操作 return new Promise((resolve) => { setTimeout(() => { resolve({ x: 0, y: 1 }) }, 0) }) } }) export default router