在VisualStudio2017中,我通常使用CTRL+M CTRL+O来折叠cs文件中的部分或区域。这个键盘快捷键在我的JSX文件中也运行得很好。但是,它不能在JS文件中工作。
有趣的是,VS 2017能够看到和理解函数,甚至函数中的部分,比如if块等等。正如您在下面的图片中所看到的,它还提供了那些+/-图标来折叠它们。使用鼠标,我可以折叠它们,但我的键盘快捷键不工作。

如何让VS 2017使用键盘快捷键将所有内容折叠为JS文件中的定义?
发布于 2017-07-19 12:23:44
造成这种行为的原因似乎是使用箭头函数--如果您将其更改为常规函数定义,该部分将像您预期的那样使用Ctrl+M Ctrl+O (“折叠到定义”)折叠。
然而,这将导致您失去箭头函数的好处,这是不太理想的,特别是在与承诺一起使用时。
然而,究竟是什么导致了这一点,但我还没有发现,所有修复它的尝试到目前为止都证明是徒劳的。
下面是您的大纲应该如何按预期工作的示例:
return function (dispatch) { fetch('/api/accounts/members/search', fetchOptionsPost(request))
.then(function(response) {
if(response.ok)
{
...
}
});有人能证实这种行为是否发生在VS2015中吗?
干杯
编辑1:Ctrl+M Ctrl+L切换所有轮廓(不仅仅是定义),这似乎也包括箭头函数。但是,您可能需要按两次,因为一旦单个项被折叠,它就会扩展所有内容。
这就引出了这样一个问题:这是否是一个bug,而是一个特性,取决于您是否将箭头函数视为一个“定义”。
https://stackoverflow.com/questions/45152503
复制相似问题