vue-router 引用不显示

请问为什么我引入了Home这个组件后,但是界面总是不显示,这是哪里出现问题了

*<template>
  <div id="app">

    <Home></Home>
    <router-view></router-view>
  </div>
</template>

<script>

import Home from './components/Home.vue'
export default {
  name: 'App',
  components: {
    Home,
  }
}
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
*</style>**

我的home组件

<template>
  <div>
    <h1>home</h1>
    <p>{{msg}}</p>
  </div>
</template>
<script>
export default {
  data () {
    return {
      msg: "我是home 组件"
    }
  }
}
</script>

我的router.js

import Home from './components/Home.vue'

const routers = [
    {
        path: '/home',
        name: 'home',
        component: Home
    },  {
    path: '/',
        component: Home
},
]
export default routers

我的main.js

import Vue from 'vue'
import App from './App.vue'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import VueRouter from 'vue-router';//引入了官方的vue-router
import routers from './routers'//这里我引入了routers.js文件
//然后我使用
const router = new VueRouter({
  mode: 'history',
  routes: routers//这里我将这个规则给到了我的vuerouter中。
})
Vue.config.productionTip = false
Vue.use(ElementUI);
Vue.use(VueRouter);
new Vue({
  router,
  render: h => h(App),
}).$mount('#app')
阅读 1.8k
2 个回答

你的routers写的不太对
const routers = [

{
    path: '/',
    redirect: '/home',
    children: [
        {
            path: '/home',
            name: 'home',
            component: Home
        }
    ]
},

]

试试这样

const routers = [
    {
        path: '/home',
        name: 'home',
        component: Home
    },  {
    path: '/',
        redirect: Home
    },
]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题