无法在角度 2 中读取 null 的属性“过滤器"? [英] Cannot read property 'filter' of null in angular 2?

查看:19
本文介绍了无法在角度 2 中读取 null 的属性“过滤器"?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我收到此错误无法读取 null 的属性过滤器"

当我在 angular 2 中应用过滤器时.这是我的代码

when I apply filter in angular 2 .here is my code

http://plnkr.co/edit/K46jJsnmHiONuqIsnuzW?p=preview

import {Pipe} from 'angular2/core';

@Pipe({
  name: 'sortByName',
  pure: false,
})
export class SortByNamePipe {

  transform (value, [queryString]) {
    // console.log(value, queryString);
    return value.filter((student)=>new RegExp(queryString).test(student.name))
    // return value;
  }
}

推荐答案

这是因为您有使用 HTTP 请求异步加载的数据作为输入.

It's because you have data as input that are loaded asynchronously using an HTTP request.

在能够应用过滤器之前,您需要检查这一点:

You need to check this before being able to apply the filter:

export class SortByNamePipe {
  transform (value, [queryString]) {
    if (value==null) {
      return null;
    }

    return value.filter((student)=>new RegExp(queryString).test(student.name))
    // return value;
  }
}

这篇关于无法在角度 2 中读取 null 的属性“过滤器"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆