鍍金池/ 問(wèn)答/Linux  網(wǎng)絡(luò)安全  HTML/ 如何調(diào)試使用 blob 動(dòng)態(tài)生成的 js 鏈接創(chuàng)建的 worker 線程??

如何調(diào)試使用 blob 動(dòng)態(tài)生成的 js 鏈接創(chuàng)建的 worker 線程??

Worker 創(chuàng)建代碼如下:

var script = "";
    script += "var a = 0;";
    script += "a++;";
    script += "console.log(a)";
    
var blob = new Blob([script] , {
    type: 'text/javascript'
});
var src = URL.createObjectURL(blob);
var w = new Worker(src);

打開(kāi)控制臺(tái)查看,打了斷點(diǎn):

clipboard.png

斷點(diǎn)沒(méi)有觸發(fā)??!

如果是直接使用本地文件路徑的方式:

var w = new Worker('js/w.js');

w.js 中打斷點(diǎn)有用!

如何調(diào)試使用 blob 生成的 js 腳本鏈接用于 Worker 線程的調(diào)試??

回答
編輯回答
慢半拍
var script = "";
    script += "var a = 0;\n";
    script += "debugger;";
    script += "a++;";
    script += "console.log(a)";
    
var blob = new Blob([script] , {
    type: 'text/javascript'
});
var src = URL.createObjectURL(blob);
var w = new Worker(src);

加 n debugger 斷點(diǎn)調(diào)試可以不??
或者寫 一個(gè) 函數(shù) 在 blob 內(nèi)部 一下 debugger

2017年10月1日 23:58