node.js - ts-node import inte definierad vid körning


Jag har följande referens import { STORE } from "../data/store"; Det är en del av ett React-projekt och fungerar som förväntat.

Jag behöver dock köra lite kod separat över STORE och komma åt det på samma sätt som i React-projektet, men kör via ts-node. När jag försöker komma åt STORE med let data=STORE[videoId].labels;, med videoId satt till "home", får jag TypeError: Cannot read property 'home' of undefined.

Kanske någon vet vad jag saknar --- det måste vara något specifikt för ts-node...? Tack!

Svar #1

Om någon kommer till den här sidan på grund av importproblem, som jag gjorde, här är vad mitt problem var:

Jag hade tre filer: index.ts, File.json och File.ts

I index.ts:

import { thing } from "./File";

fungerade bra i VS Code: jag hade automatisk komplettering för thing och allt annat.

Men när jag körde ts-node index.ts var thing odefinierad!

När jag kom ihåg att jag hade json-filen, bytte jag bara namn på File.ts till File.module.ts och ändrade importen till:

import { thing } from "./File.module";

och det var ordnat.

Svar #2

Det verkar som att egenskapen STORE är odefinierad..

Om du ändrar import { STORE } från "../data/store"; till import * as STORE från "../data/store" fungerar det då?