预期 2 个参数,但得到 1 个。 [重复]
Posted
技术标签:
【中文标题】预期 2 个参数,但得到 1 个。 [重复]【英文标题】:Expected 2 arguments, but got 1. [duplicate] 【发布时间】:2018-09-07 06:47:33 【问题描述】:我在ts中有函数
export function minutesToHoursAndMinutes(m, zeroPadded)
if (zeroPadded == null) zeroPadded = false;
let hours:any = Math.floor(m / 60);
if (zeroPadded && (`$hours`.length === 1)) hours = `0$hours`;
let minutes:any = m % 60;
if (zeroPadded && (`$minutes`.length === 1)) minutes = `0$minutes`;
if ((hours === 24) && (minutes === '00'))
hours = 23;
minutes = 59;
return [hours, minutes];
;
并尝试像这样使用它
if (("#t-time-range").length > 0)
$("#t-time-range").slider(
range: "min",
value: filter_max.max_traveltime,
min: filter_max.min_traveltime,
max: filter_max.max_traveltime+15,
step: 15,
slide(event, ui)
const hms = FilterFunctions.minutesToHoursAndMinutes(ui.value );
$("#t-time").val(`Max $hms[0]t $hms[1]m`);
return $('#filter_travel_time').val(ui.value);
);
const hms = FilterFunctions.minutesToHoursAndMinutes($("#t-time-range").slider("value"));
$("#t-time").val(`Max $hms[0]t $hms[1]m`);
$('#filter_travel_time').val($("#t-time-range").slider("value"));
但我对争论有误
这样
预期有 2 个参数,但得到了 1 个。
如何使 2 个参数成为可选参数?
【问题讨论】:
FilterFunctions.minutesToHoursAndMinutes(ui.value )
什么?
FilterFunctions.minutesToHoursAndMinutes($("#t-time-range").slider("value"))
你只给这两个调用一个参数...
我知道,但我可以选择第二次争论吗? @Taplar
你可以只传入null
作为第二个参数或者在类型签名中将zeroPadded
更改为zeroPadded?
你做过研究吗? google.com/search?q=typescript+make+argument+optional
【参考方案1】:
尝试将滑块对象的最后一个属性更改为
slide: function(event, ui)
const hms = FilterFunctions.minutesToHoursAndMinutes(ui.value );
$("#t-time").val(`Max $hms[0]t $hms[1]m`);
return $('#filter_travel_time').val(ui.value);
【讨论】:
minutesToHoursAndMinutes
仍然需要两个参数
尝试在 2 次调用期间将 false 作为参数传递并删除第一行 if (zeroPadded == null) zeroPadded = false; 来自 minutesToHoursAndMinutes 函数。
所以你的解决方案(隐藏在 cmets 中)是:“传递两个参数”
考虑到sn-p的其余部分已经是纯意大利面了...【参考方案2】:
也许设置一个默认值,比如
export function minutesToHoursAndMinutes(m, zeroPadded=null)
.
这样这个值就已经设置好了,如果不传参数,会默认为null值。
【讨论】:
【参考方案3】:?
使参数可选。 Reference.export function minutesToHoursAndMinutes(m, zeroPadded?)
【讨论】:
以上是关于预期 2 个参数,但得到 1 个。 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
即使使用:: from,我也得到了预期的类型参数错误[重复]
Angular @ViewChild() 错误:预期 2 个参数,但得到 1 个
TypeScript 2.6.1错误TS2554:预期2-3个参数,但得到1