-
-
Notifications
You must be signed in to change notification settings - Fork 533
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts" #2122
Comments
I had the same issue, downgrade Node to 18.18 help.
|
Have you solved this problem?I switched the versions of 22,18 and 16 with different problems, and the configuration file has been modified, but it still doesn't work |
"module": "CommonJS", "esModuleInterop": true, |
My code compilation is no problem, I specially configured a file for "ts-node", code compilation is another file, anyway just to see the state of writing code, so I specially configured a file for "ts-node", compilation is another file;"tsconfig.dev.json"and"tsconfig.json" |
|
1 similar comment
|
seems to work for me with node and {
"scripts": {
- "not-work": "ts-node-esm src/main.ts",
+ "dev": "node --loader ts-node/esm --no-warnings=ExperimentalWarning src/main.ts"
}
} node: v20.5.0 |
This worked for me. Thanks @lhapaipai |
try to use |
worked for me too thanks |
Change package.json type from "module" to "commonjs" helped to me. |
Thanks @lhapaipai! In my scenario, I had to also workaround the following error. I think it stems from my project does not have a top-level Object.defineProperty(exports, "__esModule", { value: true });
^
ReferenceError: exports is not defined in ES module scope My modified command is: {
"scripts": {
- "dev": "node --loader ts-node/esm --no-warnings=ExperimentalWarning src/main.ts"
+ "dev": "node --loader ts-node/esm --no-warnings=ExperimentalWarning -e \"import('${0}');\""
}
} Example Usage: yarn dev path/to/my/file.ts |
Awesome, that solved my problem. Thanks! According to the warnings, I've also added a workaround for the "experimentalWarning" issue. import { register } from "node:module";
import { pathToFileURL } from "node:url";
// Register the TypeScript loader
register("ts-node/esm", pathToFileURL('./')); Then I changed my package.json to:
|
It runs when I change the type to commonjs in package.json. |
Search Terms
When the node version is 18.20.0, running TS-node --esm **.ts displays TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts". Runs successfully after the Node version is reduced to 16.20.2.
Expected Behavior
Actual Behavior
Steps to reproduce the problem
Minimal reproduction
Specifications
The text was updated successfully, but these errors were encountered: