2017-06-12 2 views
2

Ich versuche, den ganzen Tag meinen Kopf um diesen Fehler zu bekommen. Ich versuche Flow zu meiner React-App hinzuzufügen.React + Flow + eslint

Ich habe eine Komponente wie folgt erklärt:

// @flow 
class MyComponent extends Component { 
    static defaultProps = { 
    prop1: 'a', 
    prop2: 'b' 
    }; 
    handleOnClick: (value: string) => void; 
    props: MyComponentProps; 
} 

und Typ für MyComponentProps

type MyComponentProps = { 
    prop1: string, 
    prop2: string 
}; 

Nun Fluss keine Fehler meldet. Aber wenn ich versuche, um die App zu laufen, bekomme ich eslint Fehler:

error 'defaultProps' is not defined no-undef 
error 'handleOnClick' is not defined no-undef 
error 'props' is not defined   no-undef 

Ich babel-eslint und eslint-plugin-flowtype verwenden. Ich habe die flowtype/define-flow-type Regel zu meiner .eslintrc Datei hinzugefügt. Hier ist der relevante Teil meiner .eslintrc Datei:

{ 
    "parser": "babel-eslint", 
    "plugins": [ 
    "flowtype", 
    "react" 
    ], 
    "extends": [ 
    "plugin:flowtype/recommended" 
    ], 
    "rules": { 
    "flowtype/define-flow-type": 1, 
    "flowtype/use-flow-type" : 1, 
    "no-undef": 2, 
    "react/jsx-no-undef": 2 
    }} 

Was bin ich?

+0

Erhalten Sie diese ESLint-Fehler in den Deklarationen oder irgendwo, auf die Sie verweisen? – btmills

+0

Auf den Erklärungen. – Maggie

+0

Welche Versionen von eslint, babel-eslint und eslint-plugin-flowtype haben Sie? – btmills

Antwort

1

Haben Sie React mit import React from 'react' importiert?

+0

Ja :) Dies ist eine funktionierende Komponente, ich versuche nur, Typ Sicherheit hinzuzufügen. – Maggie

+0

Props 'Requisiten: MyComponentProps;' -> Dies ist eine der Beschwerden es weiß nicht, wo es erklärt. Wenn dies eine Komponente ist, müssten Sie propTypes oder contextTypes verwenden. https://www.npmjs.com/package/prop-types – Demon

+0

https://stackoverflow.com/questions/38786973/how-to-set-component-default-props-on-react-component Check out dieser Beitrag. Bitte fragen Sie nach, wenn Sie weitere Fragen haben. – Demon

Verwandte Themen