#javascript #vue.js
#javascript #vue.js
Вопрос:
маршруты:
import vQuestion from './components/visitor/vQuestion';
import login from './components/auth/login';
import register from './components/auth/register';
import forgot from './components/auth/forgot';
import Home from './components/Home';
import Question from './components/Question/Question';
import Answer from './components/Answer/Answer';
export const routes = [
{ path: '/', name: 'vQuestion', component: vQuestion },
{ path: '/register', name: 'register', component: register },
{ path: '/login', name: 'login', component: login },
{ path: '/forgot', name: 'forgot', component: forgot },
{ path: '/answer/:id', name: 'answer', component: Answer},
{ path: '/home', name: 'home', component: Home, meta: {requiresAuth: true}},
{ path: '/question', name:'question', component: Question, meta: {requiresAuth: true} },
];
я хотел бы задать ответ, видит ли кто-либо из зарегистрированных или нет
<ul v-for="question in questions" v-bind:key="question.main" id="my-table">
<router-link class="" :to="{name:'answer', params: {id: question.main}}">
<p>{{question.title}}</p>
</router-link>
</ul>
но без входа в систему пользователь может открыть этот путь, после входа в систему, когда пользователь нажимает на эту ссылку, этот временной путь не был перенаправлен
в main.js файл
const router = new VueRouter({
mode: 'history',
routes
});
router.beforeEach((to,from,next) => {
const requiresAuth = to.matched.some(record => record.meta.requiresAuth);
const currentUser = firebase.auth().currentUser;
if(requiresAuth amp;amp; !currentUser) next('/');
else if(!requiresAuth amp;amp; currentUser) next('/home');
else next();
});
Комментарии:
1. Не могли бы вы поделиться своим router.js файл, используемый в вашем приложении?
2. сначала у меня есть маршруты записи router.js файл содержит