【问题标题】:How dynamicly change property of object by template string [duplicate]如何通过模板字符串动态更改对象的属性[重复]
【发布时间】:2018-03-16 09:52:46
【问题描述】:

在我的角度项目中,我有一个包含用户列表和搜索栏的表格。这是我的搜索功能:

searchUser() {
    const regExp = new RegExp(this.searchTerm, 'gi');

    this.users = this.users.filter((user) => regExp.test(user.username));
}

现在它只能按用户名搜索,但我希望能够按选定的字段进行搜索。我有一个带有我的搜索标准选项的选择。所以我不知道如何根据选定的搜索条件动态改变过滤器功能中用户对象的属性。

我考虑过 es6 模板字符串并尝试过这样的:

this.users = this.users.filter((user) => regExp.test(user`.${this.selectedCriterion}`)

但它没有用。什么是正确的语法? 将不胜感激任何建议

【问题讨论】:

    标签: javascript angular ecmascript-6


    【解决方案1】:

    使用计算属性语法,

    this.users = this.users.filter((user) => regExp.test(user[this.selectedCriterion])
    

    【讨论】:

    • 谢谢)它有效
    猜你喜欢
    • 1970-01-01
    • 2013-05-24
    • 1970-01-01
    • 2017-08-16
    • 1970-01-01
    • 2021-11-23
    • 2011-10-27
    • 2016-03-19
    • 2013-03-11
    相关资源
    最近更新 更多