“--isolatedModules”标志和 RouterContext 的问题

Problems with '--isolatedModules' flag and RouterContext

尝试 运行 我的 deno 应用程序时出现以下错误,我不明白为什么..有人遇到过这个问题吗?

运行 命令:deno 运行 --allow-all server.ts

错误:

error: TS1205 [ERROR]: Re-exporting a type when the '--isolatedModules' flag is provided requires using 'export type'.
  RouterContext,
  ~~~~~~~~~~~~~
    at file:///Users/XXXX/Documents/DenoAPP/deps.ts:4:3

deps.ts

export { Application, Router, RouterContext, Context, send } from "https://deno.land/x/oak@v10.4.0/mod.ts";
export { MongoClient } from "https://deno.land/x/mongo@v0.29.2/mod.ts";
export { hashSync, compareSync} from "https://deno.land/x/bcrypt@v0.3.0/mod.ts";
import "https://deno.land/x/dotenv@v3.2.0/load.ts";
export * from "https://deno.land/x/djwt@v2.4/mod.ts";

有关解释,请参阅 --isolatedModules

OAK RouterContext 核实他们自己 export type

顺其自然拆分

export { Application, Router, RouterContext, Context, send } from "https://deno.land/x/oak@v10.4.0/mod.ts";

进入

export { Application, Router, send } from "https://deno.land/x/oak@v10.4.0/mod.ts";
export type { RouterContext, Context } from "https://deno.land/x/oak@v10.4.0/mod.ts";

您可以使用 type modifier on the type names 来解决您的问题。这是 TS 版本 ≥ 4.5:

的惯用推荐方法
export {
  Application,
  Router,
  type RouterContext,
  Context,
  send,
} from "https://deno.land/x/oak@v10.4.0/mod.ts";