如何在Golang Web模板属性中生成字符串或nil并简化代码?
简化Golang模板中按钮Class的写法
当然可以简化这段代码,甚至能精简为一行。核心思路是把固定的Class部分抽离,仅通过条件判断动态添加active类,避免重复编写长串相同的Class内容。
精简后的一行代码如下:
<button class="{{ if eq .var1 "val123" }}active {{ end }}class1 class2 class3 class4 class5 class6 ......">test</button>
说明
- 当
.var1的值等于val123时,模板会输出active(注意末尾的空格,确保和后续Class名称分隔开)加上后面的固定Class列表; - 当条件不满足时,仅输出固定的Class列表,完全等价于原代码的逻辑,但大幅减少了冗余代码。
内容的提问来源于stack exchange,提问作者Marco C. Stewart
相关产品推荐
相关产品推荐

