2017-04-04 14 views
5

Hata ayıklamaya çalıştığım bir npm komut dosyası var. Ben vscode kullanıyorum, ben bir hata ayıklama yapılandırması oluşturacağımı ve hata ayıklayıcı ile içinden adım attığımı düşündüm.Bir npm komut dosyasını vscode kullanarak hata ayıklamanın doğru yolu nedir?

Benim npm komut bakmak:

"scripts": { 
    ... 
    "dev": "node tasks/runner.js", 
} 

yüzden aşağıdaki hata ayıklama yapılandırma yarattı:

{ 
    "version": "0.2.0", 
    "configurations": [ 
     { 
      "type": "node", 
      "request": "launch", 
      "name": "Launch Program", 
      "runtimeExecutable": "npm", 
      "cwd": "${workspaceRoot}", 
      "runtimeArgs": [ 
       "run", "dev" 
      ], 
      "port": 5858, 
      "stopOnEntry": true 
     } 
    ] 
} 

Ve Senaryonun çalışır, ancak vscode bağlanabiliyor asla ve ben ateşlendiğinde ortaya

Cannot connect to runtime via 'legacy' protocol; consider using 'inspector' protocol (timeout after 10000 ms).

Ben bir müfettiş protokolü ekleme çalıştı: hata alıyorum

 { 
      "type": "node", 
      "request": "attach", 
      "name": "Attach (Inspector Protocol)", 
      "port": 9229, 
      "protocol": "inspector" 
     } 

Ve aracılığıyla npm komut dosyası çalıştırılırken:

npm run dev --inspect 

Ve bu sefer hatayı alıyorum:

Ensure Node was launched with --inspect. Cannot connect to runtime process, timeout after 10000 ms - (reason: Cannot connect to the target: connect ECONNREFUSED 127.0.0.1:9229).

ben özlüyorum ne parçası emin değilim. vscode üzerinden bir npm komut hata ayıklama, ancak diğer söz konusu ayrıntıları ve cevaplar olarak ayrıntılı ve özel değildir: yinelenen etiketi

başına

Düzenleme diğer soru yeniden bakın. Birisi, karşılaştığım özel vscode hata mesajlarını araştırıyorsa veya aldığım konfigürasyon türünü seçtiyse, bu sorunun seçilen cevabının vereceği seviye cevabını detaylandırmayacaktır.

+1

Muhtemel kopyası [VSCode'dan npm çalıştırma komut dosyalarını kullanarak nasıl hata ayıklanır?] (Http://stackoverflow.com/questions/34835082/how-to-debug-using-npm-run-scripts-from-vscode) –

cevap

8

npm script hata ayıklamaya çalışmamalısınız çünkü gerçekten istediğiniz şey, npm run komutuyla başlatılan betiğe hata ayıklayıcınızı eklemektir (burada NPM, yalnızca görev koşucusu olarak kullanılır).

{ 
    "version": "0.2.0", 
    "configurations": [ 
     { 
     "type": "node", 
     "request": "launch", 
     "name": "Launch Program", 
     "program": "${workspaceRoot}/tasks/runner.js" 
     } 
    ] 
} 

Eğer gerçekten npm komut, o zaman aşağıdaki yapılandırma kullanabilirsiniz kullanarak yürüttüğünüz istiyorsanız

:

{ 
    "type": "node", 
    "request": "launch", 
    "name": "Launch via NPM", 
    "runtimeExecutable": "npm", 
    "windows": { 
    "runtimeExecutable": "npm.cmd" 
    }, 
    "runtimeArgs": [ 
    "run-script", 
    "dev" 
    ], 
    "port": 5858 
} 

ama aynı zamanda change zorunda senaryonuz komutu (bir hata ayıklama bağlantı noktası belirtin)

"scripts": { 
    "dev": "node --nolazy --debug-brk=5858 tasks/runner.js" 
    }, 

Çeşitli hata ayıklama yapılandırmalarını yalnızca dişli çark simgesini tıklayıp birini seçerek keşfedebilirsiniz. Node.js ayıklama yaklaşık

enter image description here

fazla VS Code documentation bulunabilir.

+0

Korku veren! Cevap ve ayrıntılı cevap için teşekkürler. Bunu takdir ediyorum. –

İlgili konular