问题标签 [ts-node-dev]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 为什么 apify-shared npm 包打印“日志错误”
使用apify-shared npm 包,当我尝试运行项目时,我收到错误消息:
我不知道是什么导致了上述错误。什么可能导致触发这样的错误?有趣的是,在同一个 docker 实例上运行具有相同设置的同一个项目可以正常工作而不会显示任何错误。
PS:我在docker上运行它
任何帮助将不胜感激,谢谢!
node.js - ts-node-dev 没有正确重新加载子模块
我遇到了一个问题,ts-node-dev
编译时它似乎没有正确加载子依赖项。我的项目是使用 lerna 在 monorepo 中设置的,以链接必要的依赖项。我有一个server
模块和child
一个依赖于它的模块。运行tsc --watch
会根据更改编译child
模块。当我ts-node-dev
在server
模块中运行时,它检测到模块中已经进行了更改child
并重新编译。但是模块中的更改child
不会传播到server
模块,例如它没有与child
模块的更新一起编译。tsc --watch
在模块中运行会server
执行正确的行为,正确地拉入child
模块中的更改。
关于如何获得正确行为ts-node-dev
或类似行为的任何建议?
蒂亚!
heap-memory - 如何解决内存堆错误 ts-node-dev?
在开发过程中,内存堆错误不断出现,开发延迟。
我设置节点内存来防止这种情况,但我不知道它是否有效。
万一 .env 可能会重置它,我也将它放在 .env 文件中。
相同的症状一遍又一遍地出现。我想,我至少应该检查一下内存是否扩大了。但不知道怎么...
我该怎么办?
node.js - ts-node-dev 遇到错误:“找不到模块'typescript'”
我正在尝试设置一个基本的 nest.js 应用程序。
main.js 位于 src 文件夹中。我运行这个命令:
我收到此错误:
我全局安装了打字稿,关闭终端并重新启动它。运行tsc -v
,我得到“版本 4.3.5”,但错误没有解决。
这是 tsconfig.json:
安装打字稿后,我重新创建了这个文件tsc --init
并启用了
node.js - 有没有办法“重新启动”node.js 应用程序的某些部分,同时保留其他部分(数据库连接,一些承诺)?
我正在 node.js 上开发一个服务器应用程序。在使用nodemon
时,我不能忽略添加一些功能会大大减慢重启的事实。我发现了一个不重新启动 ngrok 隧道的技巧,方法是运行一个单独的脚本来创建隧道,然后执行nodemon
将 url 作为 env 变量传递,简而言之,它看起来像这样:
但是,可能有更多的设置步骤是不想在每次 nodemon 重新启动时重做的,例如启动 Telegram 机器人(是的,我们可以在上面的脚本中启动 webhook,但如果我们使用 Bot 对象的构造函数,它不能作为环境变量传递)或连接到 Mongo DB(同样,连接是一个对象)。
我想知道这些应该只启动一次的对象(因为它们的启动需要时间)是否可以以某种方式传递给由nodemon
(或者ts-node-dev
因为我正在使用 TypeScript)重新启动的脚本?或者至少如果我可以创建一个 Mongo 连接(因为它比任何其他启动都需要更多时间)并在重新启动时保持它(可能通过某个池中的某个 id 找到已建立的连接)?
我能想到的唯一方法是运行一个单独的服务并通过 http 进行一些通信。似乎有点丑陋的解决方案(至少使日志记录和调试复杂化),但在某些情况下(微服务架构)可能没问题。
typescript - 类型'文章| null' 不可分配给类型 'void'
我正在尝试使用打字稿将接口实现到类中。
这是我的课:
然后我的界面:
对于我想要实现的任何其他存储库,我需要遵循该接口。顺便说一句,编辑器在 find 方法中显示了这个错误:
'ArticleMySQLRepository' 类型中的属性 'find' 不能分配给基本类型 'ArticleRepository' 中的相同属性。输入 '(id: Number) => Promise<Article | null>' 不可分配给类型 '{ (id: Number): Promise<Article | 空>; (id: Number): 承诺;}'。输入'承诺<文章 | null>' 不能分配给类型 'Promise'。类型'文章| null' 不能分配给类型 'void'。类型“null”不能分配给类型“void”.t
我需要在我的 tsconfig 上更改任何设置吗?
node.js - 我无法使用 ts-node-dev 启动 ts+express+node 项目
当我运行时npm run dev
,我无法在 chrome 中打开“http://localhost:3000”。
执行任务:
这是我的server.ts:
这是我的app.ts:
这是我的package.json:
这是我的tsconfig.json:
node.js - Typescript 编译的 JS 可以工作,但 ts-node-dev 抛出编译错误
我正在尝试fs-xattr
在 Typescript 项目中使用 npm 包,但我似乎无法在两者tsc
和ts-node-dev
.
当我运行npm run build && node index.js
它工作正常。当我运行时npm run dev
,它会因错误而崩溃:
我希望在开发时能够使用什么ts-node-dev
,所以我可以同时获得tsc
并ts-node-dev
正常工作,包括更改任何 JSON 值或节点版本或其他任何东西,没问题。
使用这些文件在节点 14.17.6 上运行的最简单重现方法:
包.json
tsconfig.json
索引.ts
node.js - 在使用 ts-node-dev 的导入语句附近收到错误“SyntaxError: Unexpected string”
我试图将 typescript 库与 node 一起使用,但我不断收到这些 SyntaxErrors。我正在使用 ts-node-dev 从 package.json 运行开发脚本。错误显示在导入语句附近,我不确定我的 tsconfig.json 是否有问题(它也附在下面)。但我正在使用 "module":"commonjs" 。
包.json
tsconfig.json
javascript - 如何在 nodejs 中导入文件以适应 tsc build & ts-node-dev?
当我使用 ts-node-dev 时,导入的文件必须命名为“./api”或“./api.ts”,并且在构建项目时(使用 tsc),我需要“./api.js” (这很正常......它变成了纯js)。
有没有办法让 ts 理解 .js 导入在 dev 中意味着 .ts 并避免在构建后手动重命名?
命名为“api.js”时的错误类型:
如果命名为“api”,则对应的:
谢谢, C