Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const CreateComponent = Vue.component('create', {
- props: ['user', 'otherProp'],
- template: '<div>User data: {{user}}; other prop: {{otherProp}}</div>'
- });
- const ListComponent = Vue.component('List', {
- template: '<div>Listing</div>'
- });
- const app = new Vue({
- el: '#app',
- router: new VueRouter(),
- created: function () {
- const self = this;
- // ajax request returning the user
- const userData = {'name': 'username'}
- self.$router.addRoutes([
- { path: '/create', name: 'create', component: CreateComponent, props: { user: userData }},
- { path: '/list', name: 'list', component: ListComponent },
- { path: '*', redirect: '/list'}
- ]);
- self.$router.push({name: 'create'}); // ok result: User data: { "name": "username" }; other prop:
- self.$router.push({name: 'list'}); // ok result: Listing
- // first attempt
- self.$router.push({name: 'create', props: {otherProp: {"a":"b"}}}) // not ok result: User data: { "name": "username" }; other prop:
- self.$router.push({name: 'list'}); // ok result: Listing
- // second second
- self.$router.push({name: 'create', params: {otherProp: {"a":"b"}}}) //not ok result: User data: { "name": "username" }; other prop:
- }
- });
Add Comment
Please, Sign In to add comment