运营商' +'不能应用于类型'数字'和' 1'

时间:2017-11-25 09:38:37

标签: angular typescript

我收到错误的时候 运营商' +'不能应用于类型'数字'和' 1'

buildQuerySpec() {
  return {
    PageSize: this.paging.PageCount,
    CurrentPage: this.paging.PageIndex + 1,
    MaxSize: '',
    Filters: this.filter,
    OrderFields: [],
    IsDescending: false
  };
}

有什么问题
 CurrentPage: this.paging.PageIndex + 1,

pageIndex是数字,不知道真的。

2 个答案:

答案 0 :(得分:4)

在Google上搜索错误消息会引导您enter image description here,这几乎可以解释为什么它不起作用。

您还可以查看https://github.com/Microsoft/TypeScript/issues/2031

  

数字,字符串,布尔值和对象

     

请勿使用NumberStringBooleanObject类型。这些   types指的是几乎从不使用的非原始盒装对象   适当地使用JavaScript代码。

/* WRONG */
function reverse(s: String): String;
     

请使用numberstringboolean类型。

/* OK */
function reverse(s: string): string;

换句话说,将Number类型替换为number

答案 1 :(得分:4)

或者,您可以尝试添加一元运算符+,例如

CurrentPage: +this.paging.PageIndex + 1

这也适用于你的情况。

希望这有帮助!