typescript - 浏览器与服务器代码的 Typescript 编译时条件
问题描述
我正在尝试在 Web 应用程序的浏览器和服务器部分之间共享代码。有类似条件的东西可能很有用#if
。Typescript中有类似的东西吗?
例如:
interface Card {
id: Uuid
text: string
created_dt: Date
}
服务器之一Uuid
是数据库库中的一种类型。在浏览器上,我需要使用其他东西。
假设代码:
#if compiling_for_browser
type Uuid = somelib.Uuid
#else
type Uuid = database_lib.types.Uuid
#endif
interface Card ...
解决方案
看来这是实现条件编译的最流行的库https://github.com/nippur72/ifdef-loader
TypeScript 团队还没有实现它,而且似乎也没有迅速采取行动,为了我的使用(基本上相同的用例)我将尝试一些 webpack 条件编译项,以便我可以轻松地为 web 构建和反应原生的
推荐阅读
- flutter - 为包含带空格的数据的 url 调用 http get
- jooq - Jooq 数据库/模式名称映射
- python - 无法使用请求和 BeautifulSoup 定位元素
- java - Apache Beam 如何根据日期值过滤数据
- node.js - 使用 multer 上传多个文件,然后将它们保存在两个不同的 mongoose 字段中
- r - 如何为 XGBoost 中的数字预测生成特征重要性图?
- wpf - WPF XAML 设计器在从 .NETframework 迁移到 .NETCore5 后引发空引用异常
- excel - Excel VBA:Application.max 和 worksheetfunction.max
- php - Laravel 8 中的 Google SMTP 问题
- macos - Kubernetes NodePort url 被“minikube 服务”更改
"