通过source-map.js结合source-map文件已经错误行列就能找到源码对应的行列。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/source-map.js"></script> <title>Document</title> <script type="module"> window.onload=function(){ sourceMap.SourceMapConsumer.initialize({ "lib/mappings.wasm": "//repo.bfw.wiki/bfwrepo/js/mappings.wasm", }); //加载map文件 fetch('/asset/main.js.map') .then(response => response.text()) .then(data => { const consumer = new sourceMap.SourceMapConsumer(data); consumer.then(res => { const data= res.originalPositionFor({ line: 1, column: 946});//把错误的行列数值输进去 console.log(data)//就能看到源代码中对应的错误行与列额 }) // 处理获取到的数据 // console.log(data); }) .catch(error => { // 处理错误 console.error(error); }); } </script> <script src="/asset/mainnomap.js"></script> <script> window.onerror = function (msg, url, row, col, error) { const obj = { msg, url, row, col, }; console.log(obj); }; </script> </head> <body> 看console </body> </html>
网友回复