Vscode: 执行“复制值”时,监视窗格不使用评估名称

创建于 2018-07-23  ·  3评论  ·  资料来源: microsoft/vscode

我遇到了一个错误,即从Watch窗格复制(使用Copy Value )的值被截断了。 我进行了调查,似乎VariablesWatch窗格的行为有所不同。 我正在检查其中有一个长字符串的数组:

screen shot 2018-07-23 at 9 42 59 am

scopesRequestevaluateRequest我为数组返回variablesReference 。 在variablesRequest它们都返回相同的数据,即以下数据( Variable的数组):

[
    {
        "evaluateName": "longStrings[0]",
        "indexedVariables": null,
        "name": "[0]",
        "type": "String (_OneByteString)",
        "value": "\"This is a long string that is 300 characters! This is a long string that is 300 characters! This is a long string that is 300 ch…\"",
        "variablesReference": 0
    }
]

它有一个要显示的截断的字符串,以及一个将给出完整字符串的evaluateName 。 但是似乎当我从Variables窗口中选择Copy Value ,表达式会被求值,但是从Watch窗口中选择Copy Value只是将截断的值复制到剪贴板。

screen shot 2018-07-23 at 9 47 44 am

@isidorn看起来像是一个错误,还是它们打算以不同的方式工作?)

bug debug verified

所有3条评论

没错,这是一个问题,我可以通过在此处传递变量而不是variable.value

但是,这似乎发现了来自节点调试的另一个错误。 这是因为监视窗口中变量的EvaluateName是伪造的。 @weinand @roblourens您能调查一下吗? 或者,如果您愿意,我可以为该问题推送修复程序,该修复程序将发现另一个问题

我推送了一个评估值问题的修复程序。

@roblourens太棒了,我会为此提供解决方法!

此页面是否有帮助?
0 / 5 - 0 等级