我希望在刀片模板中考虑PHPdoc块。
PhpStorm 9,Laravel5.1,刀片模板文件:
<?php
/* @var App\Models\User $user */
?>
...
<?= $user->email ?> <- autocomplete for the word "email" is working
...
{{ $user->email }} <- autocomplete not working我尝试了不同的变体:
{{
/**
* @var App\Models\User $user
**/
}}
{{ /* @var App\Models\User $user */ }}
...
{{ $user->email }} <- autocomplete not working...
...
In such variant autocomplete works, but only within that block:
{{
/* @var App\Models\User $user */
$user->email
}}
...
{{ $user->email }} <- here does not work again...如何使自动完成在刀片模板的所有块中工作?
发布于 2015-12-07 14:52:42
目前(2015年12月),PhpStorm不支持使用Blade语法(特别是完成Blade变量)的Blade模板中的PHPDoc注释。
请跟随这些门票(星号/投票/评论),以获得有关进展的通知:
更新:
上述威-26501票据是在2017年实现的,现在您可以使用PHPDoc注释在Blade文件中声明变量及其类型。
PHP代码块:
<?php
/** @var \App\Models\User $user */
/** @var \App\MyService $someService */
?>..。或特定于叶片的语法(@php . @endphp):
@php /** @var \App\Models\User $user */ @endphp有关详细信息,请参阅以下博客文章:https://blog.jetbrains.com/phpstorm/2017/02/code-completion-in-laravel-blade-templates/

发布于 2019-09-15 08:51:14
大致相同的答案,只是封装在刀片指令中:
@php /** @var App\Models\User $user */ @endphp
{{ $user->email }}发布于 2019-03-20 12:52:03
你现在可以做你想做的事了:
<?php
/* @var App\Models\User $user */
?>
...
{{ $user->email }} <- autocomplete working请参阅https://blog.jetbrains.com/phpstorm/2017/02/code-completion-in-laravel-blade-templates/
https://stackoverflow.com/questions/34131021
复制相似问题