用vue-cli创建了vux的模板以后,看到根目录main.js里面包含路由信息,router文件夹下的index.js 也有路由信息。npm run dev 发现起作用的是 main.js下的路由。
想请教一下,router文件夹下的index.js 是不是没有作用,如果要增加路由是不是只用修改 main.js里面的代码就可以了?这个router下的index.js 有什么用途呢?
main.js里面代码如下:
import Vue from 'vue'
import FastClick from 'fastclick'
import VueRouter from 'vue-router'
import App from './App'
import Home from './components/HelloFromVux'
Vue.use(VueRouter)
const routes = [{
path: '/',
component: Home
}]
const router = new VueRouter({
routes
})
FastClick.attach(document.body)
Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
router,
render: h => h(App)
}).$mount('#app-box')
router文件夹下index.js 代码如下:
import Vue from 'vue'
import Router from 'vue-router'
import Hello from '@/components/Hello'
Vue.use(Router)
export default new Router({
routes: [
{
path: '/',
name: 'Hello',
component: Hello
}
]
})
看的有点懵,这个index.js 不起作用,作者给生成这个干嘛用的呢? 直接在main.js里面修改不就可以了么?
请大神详解一下!
题主,首先router下面的index.js是进行路由配置的。你可以这样写
然后在main.js里面通过es6里面的import引入这个模板,并进行路由的设置
你上面的main.js里面已经对路由进行了配置
这是你的代码,而且你也没有引入router下面的index.js所以,你在router的index.js里面配置的Hello组件的路由是不生效的