jestjs - isolatedModules-feil på Jest-test med Create React App og TypeScript?


Jeg har startet et Create React App-prosjekt med --typescript. Når jeg skriver en test får jeg en kompilatorfeil:

// something-test.tsx
test('something', ()=>{
  expect(1).toBe(1)
})

Feilen er:

TS1208: Alle filer må være moduler når flagget '--isolatedModules' er angitt.

Fra googling trodde jeg at løsningen var å lage en jest.config.tsx med:

module.exports = {
  roots: ["<rootDir>/src"],
  transform: {
    "^.+\\.tsx?$": "ts-jest"
  },
  testRegex: "(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$",
  moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"]
};

Men det har ikke gjort noen forskjell.

Svar #1

Du har ingen import-setninger i koden din. Dette betyr i utgangspunktet at du ikke tester noe utenfor testfilen.

Hvis du tester noe som ikke er i testkoden (og derfor importerer noe), vil testfilen bli et modul og feilen vil forsvinne 🌹

Relaterte artikler