No Pinned
No Pinned

Reputation: 23

export 'default' (imported as 'router') was not found in './router'

Hi i want to implement vue router in another file but i got one error: "export 'default' (imported as 'router') was not found in './router'

Thanks in advance.

// Import
import Vue from 'vue'
import axios from 'axios'
import VueMeta from 'vue-meta'
import { router  }from './router'
import App from './pages/app'

// Config
Vue.use(VueMeta)
window.axios = axios
Vue.config.productionTip = false

// Start Vue.js
new Vue({
  router,
  ...App
})

router/index.js

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const Bar = { template: '<div>bar</div>' }

let routes = [
    // Login
    { path: '/login', component: Bar },

    // Errors
    { path: '*',  component: Bar  }
]

const router = new VueRouter({
    base: 'public', 
    mode: 'history',
    routes
})

Upvotes: 2

Views: 11757

Answers (1)

Colin
Colin

Reputation: 2487

In order to import router from your /index.js file, you need to actually export it. Just add export before const router = in your router/index.js file. So it looks like:

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const Bar = { template: '<div>bar</div>' }

let routes = [
    // Login
    { path: '/login', component: Bar },

    // Errors
    { path: '*',  component: Bar  }
]

export const router = new VueRouter({
    base: 'public', 
    mode: 'history',
    routes
})

Upvotes: 7

Related Questions