継承されたプロパティに対する Phpstorm のコード補完に問題があります。以下に私のコードの例を示します。
class ParentClass
{
public $repository;
}
/*
* @property Entity\SubClassRepository $repository
*/
class SubClass extends ParentClass
{
public function __construct()
{
$this->repository= $this->em->getRepository('Entity\Subclass');
}
public function ExampleFunction()
{
$this->repository-> !Here i need the code completion!
}
}
getRepository 関数は、param = Entity\SubClass の SubClassRepository を返すか、param = Entity\OtherClass の OtherClassRepository を返します。ところで、それが返す正確な型はありません。したがって; 親クラスの $repository オブジェクトの型が Phpstorm であると言う必要があります。
Phpstorm がコード補完に Phpdoc 表記法を使用していることは知っています。したがって、@property 表記を使用して、以下の行を SubClass に追加しようとしました。
/*
* @property Entity\SubClassRepository $repository
*/
うまくいきません。何か考えはありますか?どうもありがとう。