2016-10-25 23 views
8

sırasında node.js içinde tablolar, benhata ayıklayıcısını yok sayar; ayıklama oturumu

debugger; 

tabloların çok sayıda var bir kod temeli var. Bazen hata ayıklamak ve aslında sadece tüm hata ayıklayıcıyı atlamak istiyorum; ifadeleri ve yalnızca hata ayıklama oturumu için seçmiş olduğum el ile belirlenen kesme noktalarına devam et, Node.js ile bunu yapmak için bir şans var mı? Başka bir deyişle, uzun vadeli yer tutucuları olmak için debugger; ifadelerini dikkate almak istiyorum, ancak bazı hata ayıklama oturumları için bu uzun vadeli yer tutucuları göz ardı etmek istiyorum.

cevap

6

Bu, krom devtools ile yapılabilir.

Sen yapabilirsiniz:

node --inspect --debug-brk index.js 

böyle bir şey üreteceği:

chrome-devtools://devtools/remote/serve_file/@60cd6e859b9f557d2312f5bf532f6aec5f284980/inspector.html?experiments=true&v8only=true&ws=localhost:9229/9c2e4f37-4c3a-4477-b8da-2399c5d9819e 

Sadece kopyalamak ve krom o yapıştırın.

Tüm kesme noktalarını devre dışı bırakmak/etkinleştirmek için bir seçenek vardır ve krom daha önce ayarladığınız tüm kesme noktalarını hatırlayacaktır.

Daha fazla bilgi için lütfen --inspect'a bakın.

+0

Chrome sadece 'debugger' deyimlerini devre dışı bırakmanıza izin vermiyor? Menşei ne olursa olsun, sadece hep birlikte ayrılır. –

3

Hızlı ve kirli yolu (onun debug böylece ince gerçekten)/komut aşağıdaki komut gibi bir şey sopa olan

require.extensions['.js'] = function(module, filename) { 
    var content = fs.readFileSync(filename, 'utf8').replace(/debugger/g, [ 
    '(function() {', 
    ' if (__debugger) {', 
    ' debugger;', 
    ' }', 
    '})', 
    ].join('\n')); 

    module._compile(content, filename); 
}; 

sonra node -r ./scripts/debugger

ile düğümünü başlamak debugger.js 210

Burada bir global değişken kullanarak --inspect ile hata ayıklarsa hata ayıklayıcı repl veya kromun replinden etkinleştirilebilir/devre dışı bırakılabilir.

Teknik olarak require.extensions kullanımdan kaldırılmıştır, ancak kaldırılmayacak ve burada belirtilen şekilde çalışacaktır.

İlgili konular