फ़ाइल में ESLint प्रतिक्रिया / प्रोप-प्रकार नियम को कैसे अक्षम करें?


88

मैं उपयोग कर रहा हूं Reactऔर ESLintसाथ हूं eslint-plugin-react

मैं चाहता हूँ एक फ़ाइल में नियम।disableprop-types

var React = require('react'); 
var Model = require('./ComponentModel');

var Component = React.createClass({
/* eslint-disable react/prop-types */
    propTypes: Model.propTypes,
/* eslint-enable react/prop-types */
    render: function () {
        return (
            <div className="component">
                {this.props.title}
            </div>
        );
    }
});

जवाबों:


82

इसे अपनी फ़ाइल के शीर्ष पर रखें:

/* eslint react/prop-types: 0 */

कोशिश की और यह ठीक काम करता है। यह एक क्लीनर दृष्टिकोण है। धन्यवाद।
कद्रदान

160

यदि आपके पास केवल एक फ़ाइल है जिसे आप प्रोप-प्रकार के सत्यापन को अक्षम करना चाहते हैं, जिसका आप उपयोग कर सकते हैं:

/* eslint react/prop-types: 0 */

उन मामलों में जहां आपके पास कई फाइलें हैं, आप अपनी .eslintrcफाइल को अपनी रूट डायरेक्टरी में जोड़ सकते हैं, प्रोप-टाइप सत्यापन को अक्षम करने का नियम:

{
 "plugins": [
     "react"
  ],
  "rules": {
    "react/prop-types": 0
  }
}

आगे के नियमों के लिए आप इस लिंक को चेक कर सकते हैं, जिसने मेरी समस्या को हल कर दिया है और असुविधा के लिए आप विभिन्न विकल्पों के साथ इसे अक्षम या सक्षम करने के बारे में eslint-plugin-reaction 's github प्रलेखन से भी पढ़ सकते हैं।


1
"react/prop-types": "off"यह भी काम करता है (और यह थोड़ा अधिक पठनीय है)
राफेल टावारेस

27

मुझे करना था:

/* eslint react/forbid-prop-types: 0 */

यह मेरे लिए काम नहीं किया :

/* eslint react/prop-types: 0 */

अपनी .eslintrc फ़ाइल (पुराने संस्करण v6.0 या नीचे) में विश्व स्तर पर अक्षम करने के लिए:

{
    "rules": {
        "react/forbid-prop-types": 0
    }
}

अपनी .eslintrc फ़ाइल में विश्व स्तर पर अक्षम करने के लिए (v6.0 से ऊपर नया संस्करण):

{
    "rules": {
        "react/prop-types": 0
    }
}

नियमों के बारे में हिस्सा 2020 तक गलत है। `` नियमों '' का प्रयोग करें: {"प्रतिक्रिया / प्रस्ताव-प्रकार": 0} `
जैक किन्सेला

8

मुझे पूरे घटक को लिपि की अनदेखी टिप्पणियों से लपेटना पड़ा।

var React = require('react'); 
var Model = require('./ComponentModel');

/* eslint-disable react/prop-types */
var Component = React.createClass({

    propTypes: Model.propTypes,

    render: function () {
        return (
            <div className="component">
                {this.props.title}
            </div>
        );
    }
});
/* eslint-enable react/prop-types */

1
मेरे हीरो। इससे हल हुआ कि मैं /* eslint-disable react/no-multi-comp */अपने पहले घटक को लपेटने में सक्षम क्यों नहीं हो पाया।
फ्रेन्ड्रोइड

/* eslint-disable react/prop-types */एक फ़ाइल के बहुत शुरुआत में रखा जाना चाहिए
वॉनअक्स

7

कभी-कभी मुख्य फ़ाइल के रूप में मेरे पास छोटे घटक होते हैं। वहाँ PropTypes ओवरकिल लगता है। फिर मैं आमतौर पर ऐसा कुछ करता हूं

// eslint-disable-next-line react/prop-types
const RightArrow = ({ onPress, to }) => (<TouchableOpacity onPress={() => onPress(to)} style={styles.rightArrow}><Chevrons.chevronRight size={25} color="grey" /></TouchableOpacity>);
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.