Estou desenvolvendo uma pequena aplicação em React que pega um array de um json e deve filtrar as noticias desta array.
Tenho uma função onde recebo uma array e uso o filter() para criar uma nova array.
Quando faço o filtro por equivalencia ( === ) o filtro funciona
Ex:
filterArticles(){
const articles = this.state.articles; // array original
let search = this.state.search; // valor para efetuar o filtro
//starting filter
let filtered = articles.filter(function (a) {
return (a.author === search);
});
}
Mas quero o retorno seja verdadeiro mesmo quando o valor do search, isso é, o nome do autor, não esteja escrito por inteiro, tentei o seguinte código:
filterArticles(){
const articles = this.state.articles; // array original
let search = this.state.search; // valor para efetuar o filtro
//starting filter
let filtered = articles.filter(function (a) {
return (a.author.includes(search));
});
}
E não funcionou.
Alguma ideia do que pode estar acontecendo?