【问题标题】:typescript angular2 template queryParamstypescript angular2 模板查询参数
【发布时间】:2017-01-06 23:08:27
【问题描述】:

我正在尝试构建一个带有路由的 Angular 2 应用程序。我的模板中有一个如下所示的链接:

<a href="#" [routerLink]="['/Foo']" [queryParams]="{page:1+curr}">Next</a>

在我的组件类中curr被定义为

curr: number = 0

我希望链接的 URL 是

/Foo?page=1 

相反,1curr 似乎正在连接,并且 URL 是

/Foo?page10 

有什么想法吗?

【问题讨论】:

  • 您的代码工作正常...?我测试了它,它加了 1 和正确的 curr。

标签: templates angular typescript concatenation addition


【解决方案1】:

试试这个代码

<a href="#" [routerLink]="['/Foo']" [queryParams]="{page:'1'+curr}">Next</a>

【讨论】:

    【解决方案2】:

    问题在于,尽管 curr 被声明为 curr: number = 0,但它后来被分配给了一个通过 AJAX 返回的变量,而该变量恰好是一个字符串

    curr = data.current // current is a string
    

    我预计这会被转译器捕获,但我没有运行 lint 版本。 因此,当尝试添加一个字符串和一个数字时,数字被强制转换为一个字符串,结果是串联。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-15
      • 2017-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-24
      • 1970-01-01
      相关资源
      最近更新 更多