运行时未定义 ts-node 导入
Posted
技术标签:
【中文标题】运行时未定义 ts-node 导入【英文标题】:ts-node import not defined at runtime 【发布时间】:2018-02-05 04:10:52 【问题描述】:我有以下参考 import STORE from "../data/store";
它是 react 项目的一部分,可以按预期工作。
但是,我需要在 STORE 上单独运行一些代码,并以与在 react 项目中相同的方式访问它,但通过 ts-node
运行。当我尝试通过let data = STORE[videoId].labels;
访问STORE
时,将videoId
设置为"home"
我得到TypeError: Cannot read property 'home' of undefined
。
可能有人知道我缺少什么 --- 一定是 ts-node 特有的东西......?谢谢!
【问题讨论】:
【参考方案1】:如果有人因为进口问题而到达此页面,就像我一样,这就是我的问题:
我有三个文件:index.ts
、File.json
和 File.ts
在index.ts
:
import thing from "./File";
在 VS Code 中运行良好:我可以自动完成 thing
和所有内容。
但是在运行ts-node index.ts
时,thing
是未定义的!
当我记得我有 json
文件时,我只是将 File.ts
重命名为 File.module.ts
并将导入更改为:
import thing from "./File.module";
它被排序了。
【讨论】:
【参考方案2】:听起来属性 STORE 未定义..
如果您将import STORE from "../data/store";
更改为import * as STORE from "../data/store"
是否有效?
【讨论】:
yifanwu 说“它是 React 项目的一部分,可以按预期工作。”直到通过 ts-node 运行它。以上是关于运行时未定义 ts-node 导入的主要内容,如果未能解决你的问题,请参考以下文章
使用ts-node执行时使用打字稿导入nodejs`fs`?