import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
const Home = { template: '
Home
' }
const Foo = () =>
new Promise(resolve => {
setTimeout(() =>
resolve({
template: `This is Foo
`
})
, 10)
})
const router = new VueRouter({
mode: 'history',
base: __dirname,
routes: [
{ path: '/', component: Home },
// Just use them normally in the route config
{ path: '/async', component: Foo }
]
})
router.onReady(() => {
router.push('/async')
})
document.getElementById('load-button').addEventListener('click', (event) => {
new Vue({
router,
template: `
Async
`
}).$mount('#app')
event.target.remove()
})