ファイルでESLintreact / prop-typesルールを無効にする方法は?


88

私はとを使用ReactESLintていeslint-plugin-reactます。

私はしたい1つのファイルにルール。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 */

それを試してみて、それはうまくいきます。それはよりクリーンなアプローチです。ありがとう。
cuadraman 2015

162

小道具タイプの検証を無効にするファイルが1つしかない場合は、次を使用できます。

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

複数のファイルがある場合は.eslintrc、ルートディレクトリのファイルにprop-type検証を無効にするルールを追加できます。

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

さらなるルールについては、私の問題を解決したこのリンクをチェックアウトできます。不便な場合は、eslint-plugin-reactのgithubドキュメントから、さまざまなオプションで無効または有効にする方法について読むこともできます。


1
"react/prop-types": "off"また動作します(そしてそれはもう少し読みやすくなります)
RafaelTavares20年

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年の時点で正しくありません。` "rules":{"react / prop-types":0} `を使用してください
JackKinsella20年

8

コンポーネント全体をeslintignoreコメントでラップする必要がありました。

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 */、最初のコンポーネントをラップしただけでは取得できなかった理由が解決しました。
frandroid 2016

/* eslint-disable react/prop-types */非常にファイルの先頭に配置する必要があります
VonAxt

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>);
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.