2017-08-20 2 views
-1

Je veux analyser la configuration actuelle du routeur de mon projet avec vue2. Parce que je veux utiliser cli pour générer un composant vue. Avant cela, je dois charger l'information actuelle du registre d'itinéraire. Mais quand j'ai besoin de router.js sous mon répertoire de routeur. Noeud jette SyntaxError: Unexpected token import. J'essaye beaucoup de manières de le réparer mais elles n'ont pas fonctionné. S'il vous plaît dites-moi le bon moyen de charger la configuration de mon routeur. Merci!comment charger les fichiers .vue d'un projet vue avec node.js

 

    //to load router config 
    const routerPath = path.join(process.cwd(), 'src', 'router', 'index.js'); 

    if (existsSync(routerPath)) { 
     routes = require(routerPath) 
    } 

    //error 
    import Vue from "vue"; 
    ^^^^^^ 

    SyntaxError: Unexpected token import 
     at Object. (/Users/mosx/projects/mjb-cli/lib/check-components.js:28:33) 
     at Module._compile (module.js:570:32) 
     at Object.Module._extensions..js (module.js:579:10) 
     at Module.load (module.js:487:32) 
     at tryModuleLoad (module.js:446:12) 
     at Function.Module._load (module.js:438:3) 
     at Module.require (module.js:497:17) 
     at require (internal/module.js:20:19) 
     at Object. (/Users/mosx/projects/mjb-cli/bin/mjb-component:12:25) 
     at Module._compile (module.js:570:32) 

    // path/to/router/index.js 
    import Router from "vue-router"; 
    import Hello from "../components/Hello.vue"; 

    Vue.use(Router); 

    export default new Router({ 
     routes: [ 
      { 
       path: '/', 
       name: 'Hello', 
       component: Hello, 
       children: [ 
        { 
         path: 'child', 
         name: 'child', 
         component: Hello 
        } 
       ] 
      } 

     ] 
    }) 

+3

s'il vous plaît afficher le code lié à cette question – divine

+0

@divine, désolé pas de code avant, maintenant je l'ai ajouté – ifmos

Répondre

0

Bien que la modularité du code affiché dans la question est sujette à caution, je crois que ma réponse résoudrait le problème que vous rencontrez.
Ici, il va ..

Pour construire le code ci-dessous, je servais de vue boilerplate

vue init webpack-simple vue-cli 

Puis, je l'ai installé package vue routeur

npm install --save vue-router 

main.js Fichier

import Vue from 'vue'; 
import {routes} from './routes'; 
import VueRouter from 'vue-router'; 
import App from './App.vue'; 

Vue.use(VueRouter); 
const router = new VueRouter({ 
    routes : routes, 
    mode : 'history' 
}) 

new Vue({ 
    el: '#app', 
    router : router, 
    render: h => h(App) 
}) 

fichier Route.js

import Cricket from './components/Cricket.vue'; 
import Football from './components/Football.vue'; 
import Basketball from './components/Basketball.vue'; 
import Sports from './components/Sports.vue'; 
export const routes = [ 
    { 
     path: '/cricket', 
     component: Cricket 
    }, 
    { 
     path: '/football', 
     component: Football 
    }, 
    { 
     path: '/basketball', 
     component: Basketball 
    }, 
    { 
     path: '', 
     component: Sports 
    } 
];