有没有办法在Chrome日志点中记录源Map变量?

xcitsw88  于 2023-11-14  发布在  Go
关注(0)|答案(2)|浏览(122)

Logpoints
标签:Is there a way to evaluate variable in source map inside the Chrome Developer tools?
像许多开发者一样,我用JS语言编写代码,然后使用工具将其转换为浏览器友好的代码版本。
这似乎打破了Chrome中的日志点。例如,我想记录segmentParameters


的数据
所以我添加了一个logpoint:



但这似乎不起作用,因为segmentParameters实际上被称为_a或其他类似的东西,在现场也同样神秘(本地机器,编译)代码。代码肯定被命中,但日志点没有做任何事情。我可以调试它,并将该本地值存储在临时变量中,并以这种方式到达segmentParameters(我怀疑Chrome正在做一个小魔术,以匹配运行代码的编译代码)。
顺便说一句,控制台也不会这样做:



有没有什么技巧可以让日志点在编译后的代码中工作?我做错了什么吗?

ipakzgxi

ipakzgxi1#

Chrome现在有一个名为Resolve variable names in expressions using source maps的实验性功能,从开发工具设置中打开它可以使用控制台中源代码Map中的变量名称。

jei2mxaa

jei2mxaa2#

我有一个类似的问题,我试图获得一个函数的参数的值,看起来像这样:

public isSuperPoweredThing (thing: IThing, queryParams: Params): boolean {
    let isPageOneSearch = this.isPageOneSearch(queryParams);
    let isKeywordSearch = this.isKeywordSearch(queryParams);

    return isSearchOnPageOne && isDefaultKeywordSearch && !!thing?.superPower?.superPowerId;
}

字符串
当我试图添加一个断点,但它似乎不存在于变量名下,它是在代码中给出的:thing。我设法获得我想要使用arguments keyword的值,具体地说:arguments[0]

相关问题