typescript - 从打字稿界面创建形状
问题描述
警告:我以前从未使用过 Typescript。
我正在使用 Web 组件,并且我有兴趣创建一个文件来定义将影响组件的属性(以及潜在的事件)。我对 Typescript 进行了研究,我喜欢它似乎能够描述物体形状的简洁方式。这是我到目前为止所拥有的:
/* defining the keys (and which are optional) */
interface IX {
hidden?: boolean;
selected?: boolean;
disabled?: boolean;
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
onChange?: (event: any): void;
}
/* setting defaults */
export const ix: IX = {
hidden: false,
selected: false,
disabled: false,
}
虽然我目前没有在我的项目中使用 Typescript(我也不完全相信我需要这样做才能使其工作)我正在寻找一种解决方案,该解决方案将采用类似于上面的文件并输出一些模式定义组件的形状。也许是这样的:
export const ixShape = {
hidden: {
type: 'boolean',
optional: true,
'default': false,
},
/* and so on */
}
这可以在构建时发生,不需要在运行时发生。如果我需要像 Rollup 这样的打包工具,我也可以利用它。目前有哪些解决方案(如果有的话)?
解决方案
推荐阅读
- android - MVP 架构
- sql - 您如何并排“加入”多个 SQL 数据集(彼此不链接)?
- javascript - 为什么无阻塞节点会减少 I/O 总时间?
- scala - circe 自动推导 - 与进口作斗争
- javascript - 在 url (Javascript) 上添加部分时无法识别 Cookie
- mysql - 是否可以从 MYSQL 中的存储过程中返回多个表
- c# - 等效于 php 中的 C# Encoding.UTF8.GetBytes
- javafx - 重置无限 JavaFX RotateTransition
- ruby-on-rails - Ruby on Rails 控制器实例变量未共享
- functional-programming - 如何使用 [@ocaml.warning "-30"] 隐藏警告 30