在undercore.js微模板中评估数据的错误做法

Bad practice to evaluate data in underscore.js micro template?

本文关键字:数据 错误 评估 js undercore      更新时间:2023-09-26

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

例如,如果我们说我们的javascript文件中有这个:

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

在我们的html模板文件中

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

不评估模板中的数据会更好吗?

这不是关注点分离的问题吗?你在一个表示"层"中注入逻辑,在我看来,潜在的bug将更难追踪。

你的例子很简单,但想象一下你有类似的东西的场景

<%= 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") %>

根本不可读。