组件未在本地加载VueRouter。在生产中工作

时间:2017-12-01 19:38:25

标签: vuejs2 vue-router

很抱歉,如果这是一个简单的问题,但我暂时继承了一个用node.js / express和Vue 2.5.2前端编写的应用程序。我无法在我的测试环境中获得在本地环境中工作的特定路径。

假设我们已通过电子邮件向用户发送了一个链接。当他们点击它时,它应该打开这个特定的Vue组件。但它只是加载主页; 200状态。

以下是node / express SPA中的相关部分:

app.get('/', (req, res) => {
    return res.render('index.ejs', { has_token: false });
    });

  app.get('/token/:token', (req, res) => {
    return res.render('index.ejs', { has_token: true });
  });

设置has_token变量。以下是SPA中相关的Vue部分:

new Vue({
  el: '#app',
  components: {
    LandingPage,
    Register,
    Home
  },
  router,
  store,
  created() {

    if(has_token) {
      console.log('has token'); # WE MAKE IT HERE
      this.$router.push('/TokenRegistration');
    }
 ...
 ...

以下是创建路线的片段

const routes = [
    {
        name: '/',
        path: '/',
        component: LandingPage
    },
  {
    name: 'Register',
    path: '/Register',
    component: Register
  },
  {
    name: 'TokenRegistration',
    path: '/TokenRegistration',
    component: TokenRegistration
  },

他们正在加载

const router = new VueRouter({
    routes
});

很抱歉,如果这是一个简单的问题,但我之前没有使用过node,express或VueRouter,这是唯一让我感到困惑的事情。我仔细检查并确保两个环境都有同步的repos并重建应用程序并重新启动节点服务以防万一。

摘要:

  • 在制作中,我转到.com/token/<some string>,它会加载指定的组件TokenRegistration

  • 在本地开发中,我转到.com/token/<some string>它只是加载主页LandingPage组件

没有JS错误;页面加载200成功。

0 个答案:

没有答案