Jfinal和layui标签兼容问题

背景:

    Jfinal+layui

现状:

    JFINAL标签与layui模板标签冲突

代码:

blob.png

如图所示:我的第二行的path可以正常输出({{d.image}})是layui模板输出标标签

getImage是我定义的静态方法,用来获取缩略图

#(ctx)/#(getImage(100,100, #[[{{d.image}}]]# ))或者#(ctx)/#(getImage(100,100, path))
程序都会报错
#(ctx)/#(getImage(100,100, #[[{{d.image}}]]# ))程序报错
#(ctx)/#(getImage(100,100, path)) 传入的是{{d.image}}
有没有朋友遇到过类似的问题,一起讨论下

评论区

JFinal

2018-02-01 00:34

指令内部不能使用 #[[ ]]#

指令内部只能使用表达式,注意看表达式文档中所提到的各种表达式,是不可能包含 #[[ ]]# 这些东东的

所以改成:#(getImage(100,100, "{{d.image}}")) 即可

海涛大大

2018-02-01 09:37

@JFinal 这样也比对,传入的参数为"{{d.image}}",我比较奇怪,例如我这样的写法:
#set(path = '{{d.image}}' )
#(path)
#(ctx)/#(getImage(100,100,path ))
第二行path是可以正常输出的,为什么放在第三行的调用静态方法中却不行呢?如果方法内部只能使用表达式,那我感觉path没有正常解析,因为他只是原样输出了'{{d.image}}'

JFinal

2018-02-01 15:13

@海涛大大 再多看看 jfinal 文档模板引擎的 表达式 与 指令 部分,花不了多少时间,20 分钟彻底学会这两者的用法

懒猫

2018-10-15 14:29

然而,我看了文档,也不知道要怎么 解决这个问题。

JFinal

2018-10-15 20:59

@懒猫 用原样输出指令将 layui 冲突代码包起来即可:
http://www.jfinal.com/doc/6-6

例如:
#[[
这里是 layui 写的代码
]]#

懒猫

2018-10-15 21:14

前端用了一个框架 {{d.type}} 怎么用 com.test.DataType::getValue("{{d.type}}") 这样报错. 原样输出. 就是楼主这种也有问题. #set 也不行.

woaiyou

2020-10-27 21:12

楼主问题是咋解决的?

热门反馈

扫码入社