Reputation: 115
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.
Upvotes: 7
Views: 17201
Reputation: 29011
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.
Upvotes: 16
Reputation: 605
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.
Upvotes: 3