typescript - Kan inte använda `ts-node` för att köra skript på expo (react-native)


novis här.

Jag har ett ReactJs-projekt som fungerar perfekt på alla sätt. Men nyligen ville jag göra det till ett monorepo och jag valde Expo för detta jobb.

Jag kan få det mesta av koden att fungera förutom vissa anpassade skript. Det säger SyntaxError: Cannot use import statement outside a module och raden i koden som ledde till detta fel var node_modules/expo/AppEntry.js som finns i main-parametern i package.json.

Detta är den fullständiga loggen:

ts-node -r tsconfig-paths/register --project scripts/helpers/tsconfig.json scripts/customScript.ts
/home/username/Workspace/project/node_modules/expo/AppEntry.js:1
import 'expo/build/Expo.fx';
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at wrapSafe (internal/modules/cjs/loader.js:1050:16)
    at Module._compile (internal/modules/cjs/loader.js:1098:27)
    at Module._extensions..js (internal/modules/cjs/loader.js:1167:10)
    at Object.require.extensions.<computed> [as .js] (/home/username/Workspace/project/node_modules/ts-node/src/index.ts:529:44)
    at Module.load (internal/modules/cjs/loader.js:983:32)
    at Function.Module._load (internal/modules/cjs/loader.js:891:14)
    at Module.require (internal/modules/cjs/loader.js:1023:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (/home/username/Workspace/project/scripts/helpers/customScript.ts:2:1)
    at Module._compile (internal/modules/cjs/loader.js:1128:30)
error Command failed with exit code 1.

och detta är innehållet i scripts/helpers/tsconfig.json:

{
  "compilerOptions": {
    "allowSyntheticDefaultImports": true,
    "jsx": "preserve",
    "lib": ["dom", "esnext"],
    "moduleResolution": "node",
    "noEmit": true,
    "skipLibCheck": true,
    "resolveJsonModule": true,
    "target": "es5",
    "allowJs": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "esModuleInterop": true,
    "module": "commonjs",
    "isolatedModules": true,
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "noImplicitThis": false
  },
  "exclude": ["node_modules"],
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"]
}

Det här felet uppstår inte i alla skript, bara i vissa anpassade skriptkommandon.

Jag försökte söka efter en lösning i flera timmar och provade en massa metoder utan resultat. T__T

Obs: alla fel försvinner om jag tar bort main-fältet från package.json.

Redigera: Jag har skapat ett exempel för att återskapa detta fel här, ts-node-next-expo