Передача данных между путями с помощью $ router.push () в VueJS - PullRequest
0 голосов
/ 02 июня 2018

Я в некотором роде новичок в VueJS и пытаюсь передать роль пользователя из пути входа в систему после того, как он / она прошел аутентификацию на домашней странице, где я могу определить, какие ссылки пользователь может видеть, используя v-if,Ниже мой код login.vue:

this.$axios({
                      method: 'post',
                      url: 'api/role',
                      data: {
                        'email': this.username
                      },
                      headers: {'Authorization': 'Bearer '+ this.$tokens.getToken()}
                    })
                    .then(response => {
                        this.role = response.data['role'];
                        
                    })
    				this.$router.push('/');
    			})
    			.catch(function(error){
    				console.log(error);
    			})

Как я могу передать значение 'this.role' в путь '/', чтобы получить к нему доступ оттуда?

1 Ответ

0 голосов
/ 02 июня 2018

Вы можете использовать запрос для передачи роли.

Поэтому добавьте запрос, в котором вы программно перемещаете пользователя на домашнюю страницу:

this.$router.push({path:'/', query:{role: this.role}});

Затем в компоненте домашней страницы вы можете получитьмаршрут запрашивает вашу функциональность

Например:

//homme page component

created(){
  if(this.$route.query.role === 'admmin){
    //this is admin
  }
}
...