如何使用具有两个不同值的搜索栏?
P粉238433862
P粉238433862 2023-09-07 17:28:41
0
2
459

我尝试向已经成功运行的搜索栏添加另一个值 (organization.name),以便不仅过滤来自organization.topic 的SearchTerms 列表。但他没有添加它..

const filteredOrganizations = context.allOrganizations.filter((organization) => (organization.topic.searchTerms
        .map((term) => term.toLowerCase())
        .join(" ") ||
        organization.name)
        .includes(searchText.toLowerCase()))

这是我的退货的相关部分:

<TableBody>
                            {filteredOrganizations.map((organization) => (

                                <StyledTableRow key={organization.id}>
...

希望你有想法

P粉238433862
P粉238433862

全部回复(2)
P粉745412116

不要使用||,因为您还想检查组织名称。 只需连接字符串即可

const filteredOrganizations = context.allOrganizations.filter(organization => 
(
  organization.topic.searchTerms
    .map(term => term.toLowerCase()).join(' ')
    + ' ' + organization.name
)
.includes(searchText.toLowerCase()))
P粉083785014

这就是解决方案:

const filteredOrganizations = context.allOrganizations.filter(organization => {
        const searchTerms = organization.topic.searchTerms.map(term => term.toLowerCase()).join(" ");
        const organizationName = organization.name.toLowerCase();
        const searchString = `${searchTerms} ${organizationName}`;

        return searchString.includes(searchText.toLowerCase());
    });
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板