"후크 구현은 @param 문서를 복제해서는 안됩니다."


10

PhpStorm을 사용하여 사용자 정의 모듈에서 코드 정리를 실험하고 있습니다. 다음 기능의 경우이 경고가 나타납니다.

후크 구현은 @param 문서를 복제하지 않아야합니다.

/**
 * Implements hook_field_widget_form_alter().
 *
 * @param array $element
 * @param array $form_state
 * @param array $context
 */
function mymodule_field_widget_form_alter(&$element, $form_state, $context) {
  if ($context['widget'] instanceof \Drupal\text\Plugin\Field\FieldWidget\TextareaWidget) {
    $element['#after_build'][] = '_mymodule_remove_textarea_help';
  }
}

이 문제를 해결하려면 어떻게해야합니까? @param의견 을 삭제해야한다고 생각 했지만 그렇게 할 때 PhpStorm은 매개 변수 의견이 없다고 불평합니다.


2
"환경 설정-> 편집기-> 검사-> PHP-> PHPDoc-> PHPDoc 주석 누락"을 해제 하시겠습니까? 일반적인 답변은 PHPStorm의 문서 검사를 Drupal의 문서 표준에 맞추는 것입니다
Clive

3
문제는 드루팔 코딩 표준과 PHP 코딩 표준을 확인한다는 것입니다. 일반적인 PHP 코딩 표준에 대한 스니퍼를 비활성화하고 사용자 정의 drupal 코딩 표준을 사용하십시오
sgoelz

@Clive는 여기에 정답입니다. 이 오류는 코딩 표준과 관련이 없으며 PHPStorm의 내장 검사와 관련이 있습니다. :
Chapabu

승인 된 차일드는 IDE에서 문제를 해결하지만 코딩 표준을 확인하면 여전히 문제가 있습니다. 내 솔루션을 참조하십시오.
Adrian Cid Almaguer

답변:


5

문제는 후크를 구현하고 있고 이것보다 더 많이 쓸 필요가 없다는 것입니다.

/**
 * Implements hook_field_widget_form_alter().
 */

hook_field_widget_form_alter()정의 에 모든 정보가 있으므로 항상 후크 구현에 다음과 같이 작성하십시오.

/**
 * Implements hook_hook_name().
 */

귀하의 경우 :

/**
 * Implements hook_field_widget_form_alter().
 */
function mymodule_field_widget_form_alter(&$element, $form_state, $context) {
  if ($context['widget'] instanceof \Drupal\text\Plugin\Field\FieldWidget\TextareaWidget) {
    $element['#after_build'][] = '_mymodule_remove_textarea_help';
  }
}

2

후손에 대한 답변 추가; Clive의 의견에 따라 :

"PHPDoc 주석 누락"을 확인하는 내장 PHPStorm 검사를 해제 한 다음 안전하게 @param블록을 삭제할 수 있습니다 .

여기에 이미지 설명을 입력하십시오


1
downvoter가 답을 수정할 수 있도록 무엇이 잘못되었는지 설명해야합니까? 아니면 "Tat for tat"downvote입니까?
Chapabu

1
이것은 IDE의 문제를 해결하지만 코딩 표준을 확인하면 문제가 여전히 있습니다. 내 솔루션을 참조하십시오.
Adrian Cid Almaguer

0

다른 사람들이 말했듯이 프로젝트를 Drupal 프로젝트로 취급하려면 PHPStorm 구성을 설정해야합니다.

두 번째로 Coder를 시작하십시오 .

이러한 패키지가 설치되면 PHPStorm에 패키지를 연결하고 표준 시스템을 적절하게 설정하거나 명령 줄에서 보고서를 실행할 수 있습니다. 이렇게하면 환경 설정에서 PHPStorm과 함께 제공되는 일반적인 표준 대신 Drupal 코딩 표준과 환경이 더욱 일치하게됩니다.


1
downvotes는 내 것이었다. 나는 "카펫 폭탄"을 전혀 사용하지 않았으며, 그 답이 틀렸을 때 답을 다운 보트했습니다.
Chapabu

2
무례한 행동.
Jimmy Ko
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.