eslint-plugin-require-js-extension
v0.0.5
Published
TypeScript [doesn't transform extensions](https://github.com/microsoft/TypeScript/issues/16577) and [doesn't enforce file extensions](https://github.com/microsoft/TypeScript/issues/42813).
Downloads
443
Readme
eslint-plugin-require-js-extension
TypeScript doesn't transform extensions and doesn't enforce file extensions.
This is a simple eslint plugin that ensures that relative imports and exports have .js extensions.
Credit for the original implementation goes to johnrees. ❤️
- Install
npm install --save-dev eslint-plugin-require-js-extension- Create
eslint.config.js
import eslintPluginRequireJsExtension from 'eslint-plugin-require-js-extension'
export default [
{
plugins: {
'require-js-extension': eslintPluginRequireJsExtension,
},
rules: {
'require-js-extension/require-js-extension': 'error',
'require-js-extension/require-index': 'error',
},
},
]Alternatively, use the recommended config:
import eslintPluginRequireJsExtension from 'eslint-plugin-require-js-extension'
export default [
{
plugins: {
'require-js-extension': eslintPluginRequireJsExtension,
},
extends: ['eslintPluginRequireJsExtension/recommended'],
},
]- Code
// source.js
import Target from './target'- Lint
eslint .source.js
1:1 error Relative imports and exports must end with .js require-js-extension/require-js-extension- Fix
eslint --fix .// source.js
import Target from './target.js'