111 lines
3.0 KiB
JavaScript
111 lines
3.0 KiB
JavaScript
import Layout from './components/layout.vue';
|
|
import Iframe from './components/iframe.vue';
|
|
import demoRoutes from './demoRoutes';
|
|
|
|
export default [
|
|
{
|
|
path: '/components',
|
|
component: Layout,
|
|
props: route => {
|
|
const name = route.path.split('/components/')[1].split('/')[0];
|
|
return { name, showDemo: true };
|
|
},
|
|
children: demoRoutes,
|
|
},
|
|
{
|
|
path: '/iframe',
|
|
component: Iframe,
|
|
children: demoRoutes.map(item => ({
|
|
...item,
|
|
props: route => {
|
|
const hash = route.hash.replace('#', '');
|
|
return { iframeName: hash };
|
|
},
|
|
})),
|
|
},
|
|
{
|
|
path: '/',
|
|
component: Layout,
|
|
props: route => {
|
|
const name = route.path.split('/docs/vue/')[1].split('/')[0];
|
|
return { name, showApi: true };
|
|
},
|
|
children: [
|
|
{
|
|
path: 'docs/vue/customize-theme',
|
|
component: () => import('../docs/vue/customize-theme.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/customize-theme-cn',
|
|
component: () => import('../docs/vue/customize-theme.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/getting-started',
|
|
component: () => import('../docs/vue/getting-started.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/getting-started-cn',
|
|
component: () => import('../docs/vue/getting-started.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/i18n',
|
|
component: () => import('../docs/vue/i18n.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/i18n-cn',
|
|
component: () => import('../docs/vue/i18n.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/introduce',
|
|
component: () => import('../docs/vue/introduce.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/introduce-cn',
|
|
component: () => import('../docs/vue/introduce.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/use-with-vue-cli',
|
|
component: () => import('../docs/vue/use-with-vue-cli.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/use-with-vue-cli-cn',
|
|
component: () => import('../docs/vue/use-with-vue-cli.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/faq',
|
|
component: () => import('../docs/vue/faq.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/faq-cn',
|
|
component: () => import('../docs/vue/faq.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/download',
|
|
component: () => import('../docs/vue/download.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/download-cn',
|
|
component: () => import('../docs/vue/download.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/sponsor',
|
|
component: () => import('../docs/vue/sponsor.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/sponsor-cn',
|
|
component: () => import('../docs/vue/sponsor.zh-CN.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/changelog',
|
|
component: () => import('../CHANGELOG.en-US.md'),
|
|
},
|
|
{
|
|
path: 'docs/vue/changelog-cn',
|
|
component: () => import('../CHANGELOG.zh-CN.md'),
|
|
},
|
|
{ path: '', redirect: '/vue/docs/introduce/' },
|
|
],
|
|
},
|
|
{ path: '/*', redirect: '/docs/vue/introduce/' },
|
|
];
|