Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 纯函数的参数数不受支持_Javascript_Angularjs_Typescript_Angular - Fatal编程技术网

Javascript 纯函数的参数数不受支持

Javascript 纯函数的参数数不受支持,javascript,angularjs,typescript,angular,Javascript,Angularjs,Typescript,Angular,我在angular2(rc-1)中遇到问题,我通过组件绑定将字符串数组传递给我的函数。一旦数组长度超过10,我就有错误: 纯函数不支持的参数数:11 这听起来有点奇怪,因为两个原因: 数组是单参数的 为什么设置函数参数数量的限制?(我唯一想到的是性能优化,不要使用参数关键字) 组件选择器: <tb-infinite-scroll [tbDataProperty]="[ 'prop1', 'prop2', 'prop3', 'prop4', '

我在angular2(rc-1)中遇到问题,我通过组件绑定将字符串数组传递给我的函数。一旦数组长度超过10,我就有错误:

纯函数不支持的参数数:11

这听起来有点奇怪,因为两个原因:

  • 数组是单参数的
  • 为什么设置函数参数数量的限制?(我唯一想到的是性能优化,不要使用
    参数
    关键字)
组件选择器:

<tb-infinite-scroll
  [tbDataProperty]="[
    'prop1',
    'prop2',
    'prop3',
    'prop4',
    'prop5',
    'prop6',
    'prop7',
    'prop8',
    'prop9',
    'prop10',
    'prop11'
  ]"></tb-infinite-scroll>
然后在组件模板内部:

<div *ngIf="sharedServices.typeOf(dataProp) === 'object'">
    <div class="tb-infinite-scroll__cell" *ngFor="let prop of dataProp">{{row[prop]}}</div>
</div>
知道是什么导致了这个问题/解决方法吗


提前感谢。

我希望这能奏效:

<tb-infinite-scroll
  [tbDataProperty]="tbDataProperty"></tb-infinite-scroll>

将数组移动到类并仅引用保存数组的变量是否是一个选项?。我想Angular会监视所有变量的更改,以便在一个值更改时更新绑定,在这种情况下,限制数量对我来说是有意义的。我想您是想在父组件范围(.tb infinite scroll是当前组件)中定义数组,而不是在视图中?如果是的话,那么我做了,它的工作,所以请编辑您的帖子,我会接受答案。谢谢。谢谢你的反馈!这就是我的意思,只是没有引起足够的注意:-/
browser_adapter.js:77 Error: Uncaught (in promise): Unsupported number of argument for pure functions: 11
    at resolvePromise (zone.js:538)
    at PromiseCompleter.reject (zone.js:515)
    at eval (application_ref.js:295)
    at ZoneDelegate.invoke (zone.js:323)
    at Object.NgZoneImpl.inner.inner.fork.onInvoke (ng_zone_impl.js:45)
    at ZoneDelegate.invoke (zone.js:322)
    at Zone.run (zone.js:216)
    at zone.js:571
    at ZoneDelegate.invokeTask (zone.js:356)
    at Object.NgZoneImpl.inner.inner.fork.onInvokeTask (ng_zone_impl.js:36)
<tb-infinite-scroll
  [tbDataProperty]="tbDataProperty"></tb-infinite-scroll>
@Component({
  selector: 'parent-component',
  /*...*/
})

export class ParentComponent {
  tbDataProperty = [
    'prop1',
    'prop2',
    'prop3',
    'prop4',
    'prop5',
    'prop6',
    'prop7',
    'prop8',
    'prop9',
    'prop10',
    'prop11'
  ];