监视 GWT JavaScript/客户端代码

Monitoring GWT JavaScript/Client-side code

本文关键字:客户端 代码 JavaScript GWT 监视      更新时间:2023-09-26

我想用GWT监控每个调用的客户端函数。我尝试了几个GWT AOP框架。但是,我没有找到任何与GWT 2.7兼容的内容。

有没有人设法监视每个调用的客户端函数?我希望它自动监控客户端代码的性能。在 1k 方法项目中手动添加事件/调用很乏味......

您可以通过GWT SuperDevMode查看/调试客户端JS代码。

您可以使用 window.performance API:

var t0 = performance.now();
doSomething();
var t1 = performance.now();
console.log("Call to doSomething took " + (t1 - t0) + " milliseconds.")

https://developer.mozilla.org/en-US/docs/Web/API/Performance.now

使用 https://code.google.com/p/jquery-aop/是"容易的"。

创建一个本机 JSNI 方法,以便您可以访问"this"作为本地 GWT 模块函数...:

public static native void weave() /*-{
    $wnd.jQuery.aop.around({
        target : this,
        method : 'viewScene.*'
    }, function(invocation) {
        var t0 = $wnd.performance.now();
        var result = invocation.proceed();
        var t1 = $wnd.performance.now();
        console.log("Call to " + invocation.method + " took " + (t1 - t0)
                + " milliseconds.")
        return result;
    });
}-*/;

现在唯一的挑战是如何将"函数viewScene_0_g$"与原始代码相关联。但是,这应该可以通过源映射来实现。