当前版本4.8
如下图
模板代码如下
<div style="background: red"> #if(null) null is true #else null is false #end </div> <div style="background: blue"> #article("5e0073d4e4b02b38b1c6d036") <p>article.cover value:#(article.cover)</p> <hr> #if(article.cover) article.cover is true #else article.cover is false #end <hr> #(article) #end </div>
#article 指令为我自定义的指令,该指令向当前scope注入了article对象,article对象是用map封装的,这个问题困扰了我一天,但是通过#set(foo={"bar":null})却是正常的,目前没找到原因,可能是engine内部的问题
项目:JFinal
前面那个会自动处理作用域的问题,后面两个一个是在顶层直接入变量,另一个是在底层直接放变量
你碰到的这个问题,可以在 Scope 的 setter、getter 方法中设置断点,一下就明白了
我估计你在 ArticelDirective 中使用 Scope 时出了问题,将这块代码贴出来吧