使用jQote
,我的模板正确编译成lamdas,除非我使用$.each()
之类的东西,或尝试访问其他全局变量,比如通过_.*
访问的我自己的环境变量...类似于如何通过jQuery
$.*
我的代码设置为<* *>
...我需要能够做到这样的事情:
<* $.each( this.scheduled, function( i, s ) { *>
<a href="<*= _.base *>/.calendar/goto/<*= s.timestamp *>">
<*= s.readable *>
</a>
<* }) *>
这样做会让我犯这个错误,使用$._
...如果我从$.each()
更改为for() { }
,那么_.*
会触发相同的错误一种错误:
Expected an identifier but found 'out' instead
查看已成功编译的模板,out
是string
,jQote2
正在填充已填充数据的已解析模板。我真正可以访问的是this
,其中包含我的数据。
如何在不触发此隐晦错误的情况下访问jQote2
模板中的全局变量?
答案 0 :(得分:0)
经过大量挖掘和jQote2
生成的代码验证后,最终结果就是:
<* $.each( this.scheduled, function( i, s ) { *>
<a href="<*= _.base *>/.calendar/goto/<*= s.timestamp *>">
<*= s.readable *>
</a>
<* }); *>
让我们放大一个完全不同的角色:<* }); *>
缺少SEMI-COLON!确保完全关闭代码块对于模板编译时的压缩程度似乎非常重要。