我的代码:
this.rezerwacjeFilteredByseaarchInput.sort(function (a, b) {
if (a[5]===null) {
// console.log(a[5]);
return 1;
}
if (firmaSortOrder) {
return a[5] > b[5];
}
else {
return b[5] > a[5];
}
});
js抛出: 错误TS2345: 类型'(a:Rezerwacja,b:Rezerwacja)的参数=>布尔值| 1'不能分配给'(a:Rezerwacja,b:Rezerwacja)=>类型的参数。数'。 输入'boolean | 1'不能分配给'number'类型。 类型'true'不能指定为'number'类型。
答案 0 :(得分:1)
根据MDN description of sort function,sort compare函数必须返回一个数字。您的第一个条件返回数字,但其他两个返回布尔值。下面的代码应该可行。
--volume
答案 1 :(得分:0)
这是打字稿编译错误。 rezerwacjeFilteredByseaarchInput中的签名不正确。它应该只返回数值(这是消息所说的),但在它的主体中你可以读到它可以返回布尔值。