为什么IntelliSense会把函数更改为Function?

17

我遇到了一个非常奇怪的IntelliSense问题,我不确定它是由Visual Studio 2013还是ReSharper 8.1引起的。当我在视图(cshtml)中使用script标记(Javascript)时,某些东西会将"function"更改为大写字母"F"的"Function"。

<script type="text/javascript">
    var something = function() .... //on tab or completing the ()'s, it changes to Function
</script>

当然,这不是一件大事,但我不得不不断地回去把“F”变成小写字母,这让我很烦。有人知道为什么会发生这种情况吗?

我正在运行带有ReSharper 8.1 C#版的Visual Studio 2013 Ultimate。


可能是您的Resharper缓存需要清除,请参见:http://stackoverflow.com/questions/21283306/how-do-you-remove-a-specific-entry-from-intellisense-resharper - Piers Myers
@PiersMyers 嗯,清除缓存似乎解决了问题。您应该将您的评论发布为答案,这样我就可以点赞并选择为答案。 - AJ.
4个回答

11

清除缓存可能会解决问题 - Resharper选项环境常规并单击 清除缓存 按钮。


4
我有相同的问题和设置,但清除缓存没有帮助 :( - Glen Little

7
我遇到了与ReSharper 8.1.23.546相同的问题,清除缓存也无法解决。据报道,此问题已在8.1.1000+版本中修复。
对我有效的唯一方法是禁用JavaScript的自动弹出窗口,如此处所述:

http://youtrack.jetbrains.com/issue/RSRP-400812

  • 进入Resharper > Options > Intellsense > Autopop > JavaScript
  • 选择所有下拉项目的“显示但不预选”

这不是一个修复方法,而是一种让令人烦恼的行为消失的方法,直到我可以升级。

我喜欢ReSharper,但这个问题很烦人,以至于我正在考虑买张去捷克共和国找人挑眼睛的机票。


是的,这真的很烦人。我有同样的构建问题肯定存在。 - Alex Polkhovsky

5
清除缓存没有解决我的问题。对我来说最好的解决方案是从JS的自动完成中删除“(”字符,因为我总是只输入“function(”。

我通过转到Resharper > Options > Intellisense > Completing Characters,并将“(”放入JavaScript的“Do not complete on”框中来实现这一点。

enter image description here


4
我遇到了一个问题:R#会获取每个函数,而不是_reference.js文件中的函数,所以我将智能提示更改为使用visual studio的提示,而不是R#的提示。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接