首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
#set怎么赋值其他指令的值?
1055356469
2019-10-09 16:24
如题,比如k是后台传过来的map
#number(k.number,"#.###")
,怎么把这个值用#set(num=xxx)赋值给num变量?
项目:
JFinal
评论区
JFinal
2019-10-09 16:42
常用方法:
#set( k[number] = 123)
还可以直接调用 map 的方法:
#( k.put("number", 123), null)
注意:上面第二种方法使用了输出指令,但第二个参数为 null, 是为了让输出指令不输出任何东西,相当于仅仅是一个方法调用:调用 map.put(...)
enjoy 的指令表达式是与 java 直接打通的,所以有方法就可以调用
回复
JFinal
2019-10-09 16:43
map 的赋值在文档中都有:
https://www.jfinal.com/doc/6-4
回复
1055356469
2019-10-09 17:01
@JFinal
我的意思是,怎么把用#number格式化之后的值,赋值给另一个变量,类似
#set(a=#number(1.234567,"#.###")),把#number格式化之后得到的1.234赋值给a,但是指令的括号里是不能有#号的,这样写不行
回复
JFinal
2019-10-09 19:42
@1055356469
不支持这种用法,你可以写个 public String numFormat 方法,然后添加为 engine.addShardMethod(...),用的时候可以这样:
#set( a = numFormat( 1.23, "#.##"))
回复
1055356469
2019-10-10 09:21
@JFinal
好的,感谢
回复
1055356469
2019-10-12 09:33
@JFinal
大佬,还有个问题就是,有没有什么插件能让idea支持写enjoy模板引擎的代码,在html里写代码能有提示,格式化之类的功能,跟写原生html代码一样。
回复
JFinal
2019-10-12 12:05
@1055356469
目前 eclipse 支持这个功能, IDEA 支持还在开发中
enjoy 模板引擎的指令极少,并且与 java 规则保持一致,例如:#for、#if、#switch , 这些指令无论是名称还是用法都与 java 保持一致,学习成本极低
因此,即便没有代码提示功能也易于使用,建议坚持用一到两天,会发现提示功能其实可有可无
提示功能用于 enjoy 的好处,或许就剩一个提升输出时的效率
回复
发送
我要反馈
热门反馈
扫码入社
#set( k[number] = 123)
还可以直接调用 map 的方法:
#( k.put("number", 123), null)
注意:上面第二种方法使用了输出指令,但第二个参数为 null, 是为了让输出指令不输出任何东西,相当于仅仅是一个方法调用:调用 map.put(...)
enjoy 的指令表达式是与 java 直接打通的,所以有方法就可以调用