Deno oak 错误:未捕获断言错误:意外跳过发射



尝试在我的服务器上运行简单的Deno JsOAK中间件服务器时出现错误:

Ubuntu 18.04, 
Deno 1.0.4, 
v8 8.4.300, 
typescript 3.9.2 

通过运行deno run index.js或运行deno run -A index.js

$ deno run index.js
Compile file:///home/some/tst/index.js
error: Uncaught AssertionError: Unexpected skip of the emit.
at Object.assert ($deno$/util.ts:33:11)
at compile ($deno$/compiler.ts:1170:7)
at tsCompilerOnMessage ($deno$/compiler.ts:1338:22)
at workerMessageRecvCallback ($deno$/runtime_worker.ts:72:33)
at file:///home/some/dcode/tst/__anonymous__:1:1

这是我的索引.js文件代码:

import { Application } from "https://deno.land/x/oak/mod.ts";
const app = new Application();
app.use((ctx) => {
ctx.response.body = "Hello World!";
});
await app.listen({ port: 8000 });

将文件类型从 .js 更改为 .ts。

我在Deno中用入门部分中的"复杂程序"介绍我,直到我将文件类型从javascript更改为打字稿,我才能运行该程序。希望对您有所帮助!

这是在v1.0.3v1.0.4中引入的问题:https://github.com/denoland/deno/issues/6082,并且仍在1.0.5

在修复之前,解决方案是将Deno降级为1.0.0并使用Oak4.0.0,这是该Deno版本的适当Oak版本。

import { Application } from 'https://deno.land/x/oak@v4.0.0/mod.ts'

要降级 Deno,您可以执行以下操作:

curl -fsSL https://deno.land/x/install/install.sh | sh -s v1.0.0

或者,如果您使用的是 Windows:

$v="1.0.0"; iwr https://deno.land/x/install/install.ps1 -useb | iex

相关内容

  • 没有找到相关文章

最新更新