手动复制粘贴真的太累了
于是写了个通过 xhr 轮询来检测脚本发生变化就重载的脚本用来调试油猴脚本。
// ==UserScript==
// @name 调试脚本
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match *
// @include *
// @grant GM.xmlHttpRequest
// @grant GM.setValue
// @grant GM.getValue
// @grant unsafeWindow
// @noframes
// ==/UserScript==
(function() {
const uw = window.unsafeWindow ? window.unsafeWindow : window;
let source=""
const server='http://localhost:1234/'
const js_url='test.user.js'
const url=server+js_url
const id= setInterval(()=>{
GM.xmlHttpRequest({
method: 'GET',
url ,
onload: response => {
if (response.status == 200) {
if(source){
if(source!==response.responseText){
location.reload();
clearInterval(id)
}
}else{
source=response.responseText
console.log(`[脚本调试] 脚本体积 ${source.length/1000}k @${url}`)
// 执行代码并修改源映射指向
eval(response.responseText.replace('sourceMappingURL=/','sourceMappingURL='+server));
}
}
}
});
},200)
})();
感觉油猴好像还没有和现代 js 开发工具链很好结合的方法,望知晓的朋友不吝赐教
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于