UserScript:如何从全局范围修改webpack变量?

时间:2019-07-05 05:26:38

标签: javascript webpack closures userscripts javascript-injection

用例: 应用程序pianomarvel具有一个读取Midi输入的本地服务器。一个有角度的webApp通过websocket从服务器提取Midi输入。 该websocket URI被硬编码为var tempColor = "E2270A"; var m_Red = System.Convert.ToByte(tempColor.Substring(0, 2), 16); var m_Green = System.Convert.ToByte(tempColor.Substring(2, 2), 16); var m_Blue = System.Convert.ToByte(tempColor.Substring(4, 2), 16); // always requires the alpha parameter var m_NewColor = new UnityEngine.Color32(m_Red, m_Green, m_Blue, 255); Animinstance.GetComponent<SpriteRenderer>().color = m_NewColor;

我正在尝试使用UserScript(Greasemonkey / Tampermonkey)修改websocket URI。


相关片段:

localhost

script src


有效方法:

webpackJsonp([2], { /*[...]*/ cDNt: function(n, t, e) { /*[...]*/ var lr = { /*[...]*/ socketUrl: "ws://localhost", /*[...]*/ } /*[...]*/ }, /*[...]*/ }, [0]); 中有一个使用cDNt的嵌套函数。超时时将调用此函数。

在那里设置刹车点并从调试控制台修改socketURL即可达到目的。


什么不起作用:

chrome不支持

Intercepting脚本加载前的脚本。 没有启动脚本的Reloading the script会在脚本启动后发生。


问题:

如何从全局范围访问和更改此变量?

有什么方法可以从外部访问闭包,还是在webpack上实现闭包的标准方法?


0 个答案:

没有答案