在本机上使用默认函数参数

Using default function parameters on native

haxe 函数有一些参数,我想使用它们的默认值,所以我不需要导入任何东西(它们是下面的基本类型)。如果它们在参数顺序中排在最后,我可以不包括它们。但它们是第一个,在我 想要覆盖的一些默认值之前。

我不允许在本机上取消它们。 _ 不编译(我不认为它适用于这种情况。)我是被迫逐字导入和复制默认值,还是有其他方法?

我试过 .bind(_, ...)() 但结果是 Usage of _ is not supported for optional non-nullable arguments.

该错误来自具有非 nullable 类型的参数(静态目标上的 IntFloatBool)。如果此函数是您的代码的一部分而不是某个库,您可以使用 Null<T>?.

使其可为空

只要参数可以为 null,Haxe 还允许您简单地 跳过 如果它们是可区分的(即传递的值的类型必须不同于一个( s) 你想跳过)。这意味着您不必使用 bind() 或显式传递 null。请参阅手册 Optional Arguments 页上的第四个示例。

如果在这种特殊情况下使参数可为空不是您的选择,您可能必须复制默认值(尽管我确信可以为这个)。