วิธีแก้ไข“ การติดตั้ง Hook ไม่ควรทำซ้ำเอกสาร @param”?


10

ฉันใช้ PhpStorm เพื่อทำการทดสอบการล้างโค้ดของฉันในโมดูลที่กำหนดเอง สำหรับฟังก์ชั่นต่อไปนี้ฉันได้รับคำเตือนนี้:

การใช้งาน Hook ไม่ควรทำซ้ำเอกสาร @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
ปัญหา ist ที่คุณตรวจสอบมาตรฐานการเข้ารหัส drupal และ php มาตรฐานการเข้ารหัส คุณควรปิดการใช้งาน sniffer สำหรับมาตรฐานการเข้ารหัส php ทั่วไปและใช้มาตรฐานการเข้ารหัสแบบ drupal ที่กำหนดเอง
sgoelz

@Clive มีคำตอบที่ถูกต้องที่นี่ ข้อผิดพลาดที่มีอะไรจะทำอย่างไรกับมาตรฐานการเข้ารหัสและทุกอย่างจะทำอย่างไรกับ PHPStorm สร้างขึ้นในการตรวจสอบ :)
Chapabu

awnswer ที่ยอมรับแก้ปัญหาใน IDE แต่ถ้าคุณตรวจสอบมาตรฐานการเข้ารหัสปัญหายังคงมีอยู่ ดูวิธีแก้ปัญหาของฉัน
Adrian Cid Almaguer

คำตอบ:


5

ปัญหาคือว่าถ้าคุณใช้เบ็ดและคุณไม่จำเป็นต้องเขียนมากกว่านี้:

/**
 * Implements hook_field_widget_form_alter().
 */

เพราะคุณจะมีข้อมูลทั้งหมดในhook_field_widget_form_alter()คำจำกัดความดังนั้นเพียงแค่เขียนในการติดตั้ง hooks เท่านั้น:

/**
 * 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

การเพิ่มคำตอบสำหรับลูกหลาน ตามความคิดเห็นของไคลฟ์:

คุณต้องปิดการตรวจสอบ PHPS ในตัวที่ตรวจสอบ "ความคิดเห็นที่หายไปของ PHPDoc" จากนั้นคุณสามารถลบ@paramบล็อกของคุณได้อย่างปลอดภัย

ป้อนคำอธิบายรูปภาพที่นี่


1
ผู้ลงคะแนนเสียงสนใจจะอธิบายว่ามีอะไรผิดปกติหรือไม่เพื่อให้ฉันสามารถแก้ไขคำตอบได้ หรือเป็นเพียง downvote "tit for tat"
Chapabu

1
วิธีนี้ช่วยแก้ปัญหาใน IDE แต่ถ้าคุณตรวจสอบมาตรฐานการเข้ารหัสปัญหายังคงมีอยู่ ดูวิธีแก้ปัญหาของฉัน
Adrian Cid Almaguer

0

อย่างที่คนอื่นพูดคุณต้องตั้งค่า PHPStorm เพื่อให้โครงการของคุณเป็นโครงการ Drupal

ประการที่สองการที่ได้รับการขึ้นและทำงานกับCoder

เมื่อคุณติดตั้งแพคเกจเหล่านั้นแล้วคุณสามารถวางสายไว้ใน PHPStorm และตั้งค่าระบบมาตรฐานของคุณตามนั้นหรือเพียงแค่เรียกใช้รายงานจากบรรทัดคำสั่ง สิ่งนี้จะทำให้สภาพแวดล้อมของคุณสอดคล้องกับมาตรฐานการเข้ารหัสของ Drupal มากกว่ารุ่นทั่วไปที่มาพร้อมกับ PHPS รูปแบบออกจากกล่องกำหนดค่า


1
downvotes เป็นของฉัน ฉันไม่ได้ "ปูพรมระเบิด" ฉันเพียง แต่คัดค้านคำตอบเพราะมันไม่ถูกต้อง
Chapabu

2
เป็นการกระทำที่ไม่สุภาพ
จิมมี่โค
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.