Skip to content

Fix documentation for the new createRequire() #27758

Description

@rauschma

First issue: https://nodejs.org/dist/v12.2.0/docs/api/esm.html

Problem: mentions the deprecated module.createRequireFromPath() (and not module.createRequire()).

Second issue: https://nodejs.org/dist/v12.2.0/docs/api/modules.html#modules_module_createrequire_filename

The code example is:

const { createRequire } = require('module');
const requireUtil = createRequire(require.resolve('../src/utils/'));

// Require `../src/utils/some-tool`
requireUtil('./some-tool');

I believe this would be a better example (import vs. require; import.meta.url vs. require.resolve()):

import {createRequire} from 'module';
const require = createRequire(import.meta.url);

const siblingModule = require('./sibling-module.cjs');

Additionally, one could demonstrate url.pathToFileURL() and import a module via an absolute path. I suspect that it may be better not to allow absolute paths as arguments for createRequire().

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    docIssues and PRs related to Node.js documentation.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions