mirror of
https://github.com/zebrajr/node.git
synced 2025-12-06 12:20:27 +01:00
tools,doc: forbid CJS globals in ESM code snippets
PR-URL: https://github.com/nodejs/node/pull/38889 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Danielle Adams <adamzdanielle@gmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com>
This commit is contained in:
parent
17a9846920
commit
00c20e621f
23
.eslintrc.js
23
.eslintrc.js
|
|
@ -76,6 +76,29 @@ module.exports = {
|
|||
'doc/api/packages.md/*.js',
|
||||
],
|
||||
parserOptions: { sourceType: 'module' },
|
||||
rules: { 'no-restricted-globals': [
|
||||
'error',
|
||||
{
|
||||
name: '__filename',
|
||||
message: 'Use import.meta.url instead',
|
||||
},
|
||||
{
|
||||
name: '__dirname',
|
||||
message: 'Not available in ESM',
|
||||
},
|
||||
{
|
||||
name: 'exports',
|
||||
message: 'Not available in ESM',
|
||||
},
|
||||
{
|
||||
name: 'module',
|
||||
message: 'Not available in ESM',
|
||||
},
|
||||
{
|
||||
name: 'require',
|
||||
message: 'Use import instead',
|
||||
},
|
||||
] },
|
||||
},
|
||||
],
|
||||
rules: {
|
||||
|
|
|
|||
|
|
@ -386,7 +386,7 @@ analysis process.
|
|||
|
||||
For example, consider a CommonJS module written:
|
||||
|
||||
```js
|
||||
```cjs
|
||||
// cjs.cjs
|
||||
exports.name = 'exported';
|
||||
```
|
||||
|
|
|
|||
|
|
@ -704,7 +704,7 @@ import { another } from 'a-package/m.mjs';
|
|||
Self-referencing is also available when using `require`, both in an ES module,
|
||||
and in a CommonJS one. For example, this code will also work:
|
||||
|
||||
```js
|
||||
```cjs
|
||||
// ./a-module.js
|
||||
const { something } = require('a-package/foo'); // Loads from ./foo.js.
|
||||
```
|
||||
|
|
@ -807,7 +807,7 @@ to be treated as ES modules, just as `"type": "commonjs"` would cause them
|
|||
to be treated as CommonJS.
|
||||
See [Enabling](#esm_enabling).
|
||||
|
||||
```js
|
||||
```cjs
|
||||
// ./node_modules/pkg/index.cjs
|
||||
exports.name = 'value';
|
||||
```
|
||||
|
|
@ -920,7 +920,7 @@ CommonJS and ES module instances of the package:
|
|||
CommonJS and ES module versions of the package. For example, if the CommonJS
|
||||
and ES module entry points are `index.cjs` and `index.mjs`, respectively:
|
||||
|
||||
```js
|
||||
```cjs
|
||||
// ./node_modules/pkg/index.cjs
|
||||
const state = require('./state.cjs');
|
||||
module.exports.state = state;
|
||||
|
|
@ -1034,7 +1034,7 @@ The `"main"` field defines the script that is used when the [package directory
|
|||
is loaded via `require()`](modules.md#modules_folders_as_modules). Its value
|
||||
is a path.
|
||||
|
||||
```js
|
||||
```cjs
|
||||
require('./path/to/directory'); // This resolves to ./path/to/directory/main.js.
|
||||
```
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user