2017-05-09 1 views
2

J'essaie de commencer avec nuxt + express. J'ai le code d'ici: https://github.com/nuxt/express, fonctionnant bien avec npm run dev. Je voudrais déboguer le code de l'API.Débogage nuxt + Express - les points d'inflexion ne sont pas touchés

Dans le fichier users.js:

import { Router } from 'express' 

var router = Router() 

// Mock Users 
const users = [ 
    { name: 'Alexandre' }, 
    { name: 'Sébastien' } 
] 

/* GET users listing. */ 
router.get('/users', function (req, res, next) { 
    res.json(users) 
}) 

/* GET user by ID. */ 
router.get('/users/:id', function (req, res, next) { 
    var id = parseInt(req.params.id) 
    if (id >= 0 && id < users.length) { 
    res.json(users[id]) 
    } else { 
    res.sendStatus(404) 
    } 
}) 

export default router 

J'ai mis des points d'arrêt dans les deux méthodes get. J'ai essayé avec WebStorm ainsi que Visual Studio Code, mais dans les deux cas, les points d'arrêt ne sont pas touchés.

Mon fichier launch.json ressemble à ceci:

{ 
    "version": "0.2.0", 
    "configurations": [ 
    { 
     "type": "node", 
     "request": "launch", 
     "name": "Launch Program", 
     "program": "${workspaceRoot}\\build\\main.js" 
    } 
    ] 
} 

et package.json:

{ 
    "name": "learn-nuxt", 
    "version": "1.0.0", 
    "description": "Nuxt.js project", 
    "author": "naveed", 
    "private": true, 
    "scripts": { 
    "dev": "backpack", 
    "build": "nuxt build && backpack build", 
    "start": "cross-env NODE_ENV=production node build/main.js", 
    "precommit": "npm run lint", 
    "lint": "eslint --ext .js,.vue --ignore-path .gitignore ." 
    }, 
    "dependencies": { 
    "axios": "^0.16.1", 
    "backpack-core": "^0.3.0", 
    "cross-env": "^4.0.0", 
    "express": "^4.14.0", 
    "nuxt": "~0.10.6", 
    "source-map-support": "^0.4.14" 
    }, 
    "devDependencies": { 
    "babel-eslint": "^7.1.1", 
    "backpack-core": "^0.3.0", 
    "eslint": "^3.13.1", 
    "eslint-config-standard": "^10.2.1", 
    "eslint-loader": "^1.7.1", 
    "eslint-plugin-html": "^2.0.1", 
    "eslint-plugin-import": "^2.2.0", 
    "eslint-plugin-node": "^4.2.2", 
    "eslint-plugin-promise": "^3.4.0", 
    "eslint-plugin-standard": "^3.0.1" 
    } 
} 

Voici ce que je vois dans la console code VS:

Debugging with legacy protocol because Node.js v7.4.0 was detected. 
node --debug-brk=42131 --nolazy build\main.js 
Debugger listening on 127.0.0.1:42131 
Server listening on 127.0.0.1:3000 
DONE Compiled successfully in 5591ms9:28:41 PM 
> Open http://127.0.0.1:3000 
+0

appelez-vous listen method? Je veux dire, voyez-vous le serveur s'exécuter dans la console? –

+0

Je vois le serveur tourner dans la console. Je vais l'ajouter à la question. – naveed

Répondre

1

J'ai trouvé que l'ajout

"protocol": "inspector" 

La configuration de launch.json corrige ce problème et permet d'atteindre les points d'arrêt.