Dwie opcje.
Tymczasowe wyłączenie ostrzegania(Nietestowane, istnieje wiele sposobów, aby to zrobić)
// eslint-disable-next-line prefer-stateless-function
export class myComponent extends React.Component {
...
}
zapisać go jako czysty bezstanowym komponentu
Zwracana wartość jest wykorzystywana jako render
metoda komponentu klasowego:
export const myComponent =() => {
return (
// Stuff here
)
}
(lub użyć notacji non-ES6 jeśli to twoja sprawa.)
Dla części tak z żadnym innym logiki nośnej Wolę niejawny zwrot, np
export MyComponent =() =>
<div>
// Stuff here
</div>
Jest to kwestia preferencji. Powiedziałbym, że powinieneś przestrzegać konwencji React nazewnictwa i zachować wszystkie elementy zaczynające się od dużej litery.
Jeśli potrzebują podpory, są one przekazywane jako argument do funkcji:
const MyComponent = (props) =>
<div>
<Something someProp={props.foo} />
</div>
export MyComponent
I można destructure w parametrze:
const MyComponent = ({ foo }) =>
<div>
<Something someProp={foo} />
</div>
To może sprawić, że niejawny zwróci trochę łatwiej, jeśli używasz lokalnych zmiennych.
Zapisz jako czystą funkcję lub wyłącz błąd dla tej linii? –
jak mógłbym zmienić to na czystą funkcję? – JakeBrown777
https://facebook.github.io/react/docs/components-and-props.html#functional-andclass-components –