xdevplatform / Twitter-API-v2-sample-code

Sample code for the Twitter API v2 endpoints
https://developer.twitter.com/en/docs/twitter-api/getting-started/about-twitter-api
Apache License 2.0
2.61k stars 967 forks source link

How to fix "Uncaught Error Error [ERR_REQUIRE_ESM]: require() of ES Module not supported"? #149

Open slishnevsky opened 5 months ago

slishnevsky commented 5 months ago

I have read related posts and similar questions.

But I haven't found the solution of how to still use require().

The reason is that I downloaded Twitter API examples project and for all files they use require().

https://github.com/twitterdev/Twitter-API-v2-sample-code

So I don't want to mess with all these files, besides changing require() to import() breaks the code.

Instead I need to know if I can make any changes to configuration so that these example script would run.

I have changed "type" to "commonjs" in package.json but it hasn't resolved the problem. I am still getting this error.

Please advise.

Thank you.

P.S.

This is what happens when I replace require() with import():

enter image description here

Tried other options, no luck

enter image description here

Some comments from StackOverflow:

image

RyanLua commented 4 months ago

In #76 it mentions a fix. Basically got with versions 12+ will cause this error and running npm install got@'<12.0.0' which installs an older version of got fixes it.