I'm doing a startup server. Basically It has initial setup with express and nodemon dependencies. Unfortunately, I'm getting ERR_MODULE_NOT_FOUND
when running yarn dev
or npm run dev
Here is the code and file structure I have.
You need to add .js extension index.js:
import { SampleExport } from "../path/file.js"
In my opinion, it is better to use .env files together with some npm package or even a json file.
The issue is a missing file extension. The import needs to look like this:
import { sampleExport } from "../config/env.js";
// ^^^
import
doesn't use the same algorithm that require
used. Instead, it works according to the ECMAScript Modules specification, which requires a definite extension.
This is also explained in the node.js docs for ECMAScript modules:
A file extension must be provided when using the
import
keyword to resolve relative or absolute specifiers. Directory indexes (e.g.'./startup/index.js'
) must also be fully specified.This behavior matches how
import
behaves in browser environments, assuming a typically configured server.
import
s in a more relaxed fashion. If you'd use the browsers' native ESM implementation, import
would also require a file extension. –
Matsuyama You need to add .js extension index.js:
import { SampleExport } from "../path/file.js"
In my opinion, it is better to use .env files together with some npm package or even a json file.
© 2022 - 2024 — McMap. All rights reserved.