javascript - 如何在打字稿函数中对参数中的对象进行类型检查
问题描述
我在对函数中的某些参数进行类型检查时遇到问题
function myfun({carengine,cartransmission})
{
// Some code here
}
我希望输入检查它,所以它是这样的
function myfun({carengine:CarEngine,cartransmission:CarTransmission})
但是,这不起作用。
如何对这些参数进行类型检查?
解决方案
定义结构化函数参数的类型,例如
interface Car {
carengine: CarEngine,
cartransmission: CarTransmission
}
function myfun({ carengine, cartransmission }: Car)
{
// Some code here
}
如果您已经有一个Car
类型并且只想为您的myfun
函数指定某些属性,则可以使用Pick
interface Car {
carengine: CarEngine,
cartransmission: CarTransmission,
doors: number
}
function myfun({ carengine, cartransmission }: Pick<Car, "carengine" | "cartransmission">)
{
// Some code here
}
您也可以内联定义参数类型,但它会很快变得混乱
function myfun({ carengine, cartransmission }: { carengine: CarEngine, cartransmission: CarTransmission })
{
// Some code here
}
推荐阅读
- spring-cloud - 我们如何在 Spring cloud dataflow kafka binder 中为 Kafka 维护租户数据隔离?
- angular - PrimeNG Picklist 拖放过渡不流畅
- c# - Visual Studio 连接字符串中不接受反斜杠
- javascript - 通过 axios 发布请求 - MERNStack
- r - 从数据框中删除一系列天,
- google-sheets - Google Data Studio 报告显示 Google 表格中的错误值
- python - 解析多部分数据
- json - 无法在入站集成对象 ClassCastException Hybris 中使用集合类型属性
- php - 我如何使用这个 API,它在 wsdl 中有一个不正确的端口?
- excel - 如何使用 VBA 转置通过 QueryTables 导入的值?