如何用打字稿中的用户条件进行评估

时间:2017-08-21 08:53:20

标签: typescript conditional-statements

我有一个关于在打字稿中评估用户条件的问题。 就我而言:我有一个UI和一个代码(我的模型)。 我的示例数据对象如下所示:

"p"

嗯,在用户界面中,用户得到了一个输入文本字段,例如,他应该请求给所有红色的汽车。用户输入如下所示: "费用< = 15000",现在这个字符串应该用作一个条件,这样我就可以在id之后得到结果:1,2。

任何人都知道如何使用来自用户的requeststring作为条件,例如?:

let data = [
    {
        id: 0,
        type: vw
        eos,
        costs: 23000
    },
    {
        id: 1,
        type: ford
        van,
        costs: 14000
    },
    {
        id: 2,
        type: nissan
        sumara,
        costs: 15000
    },
    {
        id: 3,
        type: honda
        civic,
        costs: 17500
    }
]

感谢您的任何建议!

1 个答案:

答案 0 :(得分:0)

基本代码看起来像这样。但请注意:使用过滤器而不是从用户那里获取输入,因为您可以限制用户可以在文本框中输入的内容。我不确定你将如何在复杂的条件下实现这一目标。

usercondition将保持条件,让我们说cost < 15000。该值将由文本输入设置。

addItem(usercondition: any) {

 this.data.forEach(obj =>
 {
     var strcondition = 'obj.' + usercondition;
     // console.log(strcondition) will print obj.cost < 15000

     if (eval(strcondition)) // evaluate the expression and check the condition
     {
       this.result.push(object);
     }
  });
 }