jsrender - 如何将javascript文字对象传递给自定义标签?

时间:2013-01-28 12:00:26

标签: jsrender

是否可以将javascript文字对象传递给jsrender中的自定义标记? 例如:

{{tag parameter={width: 200, 
                 click: function(){
                            alert('clicked');
                      }
                } 
/}}

1 个答案:

答案 0 :(得分:1)

现在它不受支持,假设你没有设置allowCode=true。 JsRender模板应该是无副作用的。 javascript文字{}正在创建一个新的Object(),因此不会产生副作用。但是你可以通过模板参数/助手传入你想要的任何对象。许多方法可以做到这一点,例如在模板上声明帮助程序,声明全局帮助程序,在.render(data, options)调用中作为选项传入...然后您只需编写{{tag parameter=~myPassedInObject}}。您还可以使用返回不同对象的帮助程序,例如{{tag parameter=~myWidthObject(200,...)}}