कैसे ठीक करें "हुक कार्यान्वयन @param प्रलेखन की नकल नहीं करना चाहिए।"


10

मैं कस्टम मॉड्यूल में अपने कोड की सफाई के साथ प्रयोग करने के लिए PhpStorm का उपयोग कर रहा हूं। निम्न कार्य के लिए, मुझे यह चेतावनी मिल रही है:

हुक कार्यान्वयनों को @ दस्तावेज़ को डुप्लिकेट नहीं करना चाहिए।

/**
 * 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 टिप्पणी" शायद बंद करें? सामान्य जवाब Drupal के दस्तावेज़ मानकों के मैच के लिए PHPStorm के दस्तावेज़ निरीक्षण पाने के लिए है
क्लाइव

3
समस्या यह है कि आप ड्रूपल कोडिंग मानकों और php कोडिंग मानकों की जांच करते हैं। आपको सामान्य php कोडिंग मानकों के लिए स्निफर को निष्क्रिय करना चाहिए और कस्टम ड्रूपल कोडिंग मानकों का उपयोग करना चाहिए
sgoelz

@Clive का यहाँ सही उत्तर है। उस त्रुटि का कोडिंग मानक के साथ कोई लेना-देना नहीं है, और PHPStorm के निरीक्षण में बनाया गया सब कुछ करना है :)
चापबाबू

ID में समस्या को हल करने के लिए स्वीकार किए जाते हैं। मेरा समाधान देखें।
एड्रियन सीड अल्मागुएर

जवाबों:


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

उत्तर देने के लिए उत्तर जोड़ना; क्लाइव की टिप्पणी के अनुसार:

आप बंद करने की आवश्यकता PHPStorm निरीक्षण के लिए "गुम phpdoc टिप्पणी", चेक तो आप सुरक्षित रूप से अपने को नष्ट कर सकते में बनाया @paramब्लॉक।

यहां छवि विवरण दर्ज करें


1
क्या डाउनवॉटर यह बताने की परवाह करेगा कि क्या गलत है, इसलिए मैं उत्तर में संशोधन कर सकता हूं? या सिर्फ एक "टाइट के लिए शीर्षक" डाउनवोट है?
चपबाबू

1
यह आईडीई में समस्या को हल करता है लेकिन अगर आप कोडिंग मानक की जांच करते हैं तो समस्या अभी भी है। मेरा समाधान देखें।
एड्रियन सीड अल्मागुएर

0

जैसा कि दूसरों ने कहा है, आपको अपनी परियोजना को एक ड्रुपल प्रोजेक्ट के रूप में व्यवहार करने के लिए PHPStorm कॉन्फ़िगरेशन सेट करने की आवश्यकता है।

दूसरा, कि उठो और कोडर के साथ चल रहा है ।

एक बार जब आप उन पैकेजों को स्थापित कर लेते हैं, तो आप उन्हें PHPStorm में तार कर सकते हैं और अपने मानक सिस्टम को तदनुसार सेट कर सकते हैं या केवल कमांड लाइन से रिपोर्ट चला सकते हैं। यह आपके वातावरण को सामान्य रूप से Drupal कोडिंग मानकों के अनुरूप बनाएगा, जो सामान्य रूप से PHPStorm के साथ जहाज से बॉक्स कॉन्फ़िगरेशन से बाहर है।


1
चढ़ाव मेरे थे। मैंने "कारपेट बम" कुछ भी नहीं किया, मैंने जवाब को केवल गलत बताया क्योंकि वे गलत थे।
चपबाबू

2
क्या एक अपवित्र कार्य।
जिमी को
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.