Sha256: 569be3993fb4f3f9a59c4f30d6aa4ca76cb138f45c4ba810c1ff8fede1835282

Contents?: true

Size: 1.45 KB

Versions: 52

Compression:

Stored size: 1.45 KB

Contents

# import/no-absolute-path

🔧 This rule is automatically fixable by the [`--fix` CLI option](https://eslint.org/docs/latest/user-guide/command-line-interface#--fix).

<!-- end auto-generated rule header -->

Node.js allows the import of modules using an absolute path such as `/home/xyz/file.js`. That is a bad practice as it ties the code using it to your computer, and therefore makes it unusable in packages distributed on `npm` for instance.

This rule forbids the import of modules using absolute paths.

## Rule Details

### Fail

```js
import f from '/foo';
import f from '/some/path';

var f = require('/foo');
var f = require('/some/path');
```

### Pass

```js
import _ from 'lodash';
import foo from 'foo';
import foo from './foo';

var _ = require('lodash');
var foo = require('foo');
var foo = require('./foo');
```

### Options

By default, only ES6 imports and CommonJS `require` calls will have this rule enforced.

You may provide an options object providing true/false for any of

 - `esmodule`: defaults to `true`
 - `commonjs`: defaults to `true`
 - `amd`: defaults to `false`

If `{ amd: true }` is provided, dependency paths for AMD-style `define` and `require`
calls will be resolved:

```js
/*eslint import/no-absolute-path: [2, { commonjs: false, amd: true }]*/
define(['/foo'], function (foo) { /*...*/ }) // reported
require(['/foo'], function (foo) { /*...*/ }) // reported

const foo = require('/foo') // ignored because of explicit `commonjs: false`
```

Version data entries

52 entries across 52 versions & 2 rubygems

Version Path
rapid_stack-0.2.0 templates/frontend/node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
rapid_stack-0.1.1 templates/FrontEnd/node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
rapid_stack-0.1.0 templates/FrontEnd/node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.60 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.59 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.58 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.57 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.56 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.55 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.54 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.53 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.52 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.51 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.50 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.49 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.48 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.47 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.46 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.45 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md
immosquare-cleaner-0.1.44 node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md