typescript “抽象类”在苗条

xoshrz7s  于 2022-11-18  发布在  TypeScript
关注(0)|答案(1)|浏览(120)

我是相当新的苗条和前端(我主要是有经验的Rust/C++/Python),请原谅我,如果这是一个愚蠢的问题。
我试图显示不同类型的时间索引数据,我有一个用户可以编辑的变量“timestamp”。我想显示每个列表中与给定时间戳匹配的项目。
假设我的列表是温度读数和降雨量读数。

interface Temperature {
temperature: number
}
interface Rainfall {
rainfall: number
}
A = [{"timestamp" : 0, "temperature": 20}, {"timestamp": 1, "temperature": 25}, {"timestamp" : 2, "temperature": 28}]   
B = [{"timestamp" : 0, "rainfall": 200}, {"timestamp" :1, "rainfall": 210}, {"timestamp": 2, "rainfall": 220}]

我有一个可以显示相应Typescript接口的Svelte组件Temperature和Rainfall。我不知道如何抽象每种类型的数据都有一个时间戳,以及如何将其显示为一个Svelte组件。在面向对象语言中,我会使用一个抽象类,其中包含一个display()方法,该方法将返回相应的Svelte组件。
在Svelte/JS中是否有一种方法可以编写统一的代码,用于从列表中选择与时间戳匹配的数据,然后使用相应的Svelte组件显示该数据?
多谢

cbjzeqam

cbjzeqam1#

您可以为组件添加一个属性来显示数据,然后使用<svelte:component>显示它。但是,如果数据来自服务器,则不能像这样传递组件。
我可能会通过type属性使用Map。
第一个
或者,您可以使用基于type{#if}/{:else if}链。

相关问题