debugtypescriptCriticalCanonical
Why is --isolatedModules error fixed by any import?
Viewed 0 times
errorfixedanywhyisolatedmodulesimport
Problem
In a create-react-app typescript project, I tried to write this just to test some stuff quickly:
But it gives me the following error, with a red squiggly beneath
All files must be modules when the '--isolatedModules' flag is provided.
However, if I change the file to the following, then everything apparently is fine (except for the unused import of course):
Why? What is happening here? What does
// experiment.test.ts
it('experiment', () => {
console.log('test');
});
But it gives me the following error, with a red squiggly beneath
it:All files must be modules when the '--isolatedModules' flag is provided.
However, if I change the file to the following, then everything apparently is fine (except for the unused import of course):
// experiment.test.ts
import { Component} from 'react'; // literally anything, don't even have to use it
it('test', () => {
console.log('test');
});
Why? What is happening here? What does
--isolatedModules actually mean/do?Solution
Typescript treats files without import/exports as legacy script files. As such files are not modules and any definitions they have get merged in the global namespace.
Adding any import or export to a file makes it a module and the error disappears.
Also
isolatedModules forbids such files.Adding any import or export to a file makes it a module and the error disappears.
Also
export {} is a handy way to make a file a module without importing anything.Context
Stack Overflow Q#56577201, score: 468
Revisions (0)
No revisions yet.