在下划线微模板中评估数据是否有任何后果?
例如,如果我们说我们的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") %>
根本不可读。