Examples of incorrect code for this rule:
// filename: MyComponent.js
function MyComponent() {
return <div />;
}
Examples of correct code for this rule:
// filename: MyComponent.jsx
function MyComponent() {
return <div />;
}
Beware this rule only reports JSX syntax, not other non-standard syntax such as experimental features or type annotations.
When to allow a JSX filename extension. By default all files may have a JSX extension. Set this to as-needed
to only allow JSX file extensions in files that contain JSX syntax.
"rules": {
"react/jsx-filename-extension": [1, { "allow": "as-needed" }]
}
The set of allowed extensions is configurable. By default '.jsx' is allowed. If you wanted to allow both '.jsx' and '.js', the configuration would be:
"rules": {
"react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }]
}
If enabled, files that do not contain code (i.e. are empty, contain only whitespaces or comments) will not be rejected.
"rules": {
"react/jsx-filename-extension": [1, { "ignoreFilesWithoutCode": true }]
}
If you don't care about restricting the file extensions that may contain JSX.