如何在 PhpStorm 2016.2 中完成第一次工作

How to make completion works at first time in PhpStorm 2016.2

我使用的是 PhpStorm 2016.2,但我的代码完成似乎无法正常工作。输入 $this->assertCo

它仅建议我的 class 的三级祖先之前的函数名称。但是当我使用 Ctrl+Space 时,它会提示正确的项目。

这是我的 class 图:

PHPUnit_Framework_Assert class.

中缺少建议

如果不每次都使用 Ctrl+Space 怎么让它工作?

PhpStorm 和 OpenJDK 信息:

PhpStorm 2016.2
Build #PS-162.1121.38, built on July 12, 2016
JRE: 1.8.0_76-release-b216 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

当前行为的原因:用户要求 (WI-9403)在完成方法时隐藏静态方法 this->.

PHPUnit 显然已将所有 assertXXX 方法完成为 static 尽管建议通过 $this-> 访问它们(与在 JUnit 中的完成方式相同——原始PHPUnit 开发人员从中汲取灵感的工具。

How can I make it work without using Ctrl+Space every time?

目前——没办法。

但在 2016.2.1 PHPUnit methods/inside PHPUnit 测试文件(WI-32530 -- 已经实现)中它将像以前一样工作。


您也可以考虑投票给 https://youtrack.jetbrains.com/issue/WI-32713 -- 即使在 PHPUnit 测试之外也可以让这种行为完全可选(附加设置)。