I've wrote search query filter, but it seems complicated and long to me and I suppose there's another way to write it. So could you show your example?
return this.myCourses.filter(c => {
return c?.purchased_course?.title.toLowerCase().startsWith(this.searchQuery) ||
c?.purchased_course?.user?.first_name.toLowerCase().startsWith(this.searchQuery) ||
c?.purchased_course?.user?.last_name.toLowerCase().startsWith(this.searchQuery)
})
Unpack fields from objects passed as a function parameter.
const startsWithQuery = p => p?.toLowerCase().startsWith(this.searchQuery);
return this.myCourses.filter(({purchased_course: {title, user: {first_name, last_name} = {}}}) => [title, first_name, last_name].some(startsWithQuery));