vue-router 2 template
Template for vue-router 2
by zoomieos
HTML
<script src="https://npmcdn.com/vue/dist/vue.js"></script>
<script src="https://npmcdn.com/vue-router/dist/vue-router.js"></script>
<div id="app">
<router-link to="/">/home</router-link>
<router-link to="/foo">/foo</router-link>
<router-link to="/bar">/bar</router-link>
<router-view></router-view>
</div>
Babel + JSX
const Home = {
template: '<div><router-view></router-view></div>',
watch: {
$route(to, from) {
console.log('after', this.$route.path);
}
},
beforeRouteUpdate(to, from, next) {
console.log('before', this.$route.path);
next();
}
}
const Foo = { template: '<div>Foo</div>' }
const Bar = { template: '<div>Bar</div>' }
const router = new VueRouter({
mode: 'history',
routes: [
{
path: '/',
component: Home,
children: [
{ path: '/foo', component: Foo },
{ path: '/bar', component: Bar }
]
},
]
})
new Vue({
router,
el: '#app',
data: {
msg: 'Hello World'
},
created() {
this.$router.push({ path: '/' })
}
})