在下划线微模板中评估数据是否有任何后果?

例如,如果我们说我们的javascript文件中包含以下内容:

this.template({a: '10'});


并在我们的html模板文件中

<%= a > 5 ? 'Val is larger than 5':'Val is smaller than 5' %>


最好不要评估模板中的数据?

最佳答案

是不是分开关注?您正在将逻辑注入表示性的“层”中,在我看来,潜在的错误将更加难以跟踪。

您的示例很简单,但请设想一下您遇到类似情况的情况

<%= a > 10 ? (b > 20 ? " and b greater than 20" : " and b less than 20") : ( c > 20 ? " and c greater than 20" : " and c less than 20") %>

根本不可读。

10-07 14:34