layui + Thymeleaf 国际化

各位读者好,下面我分享下 layui + thymeleaf 实现国际化 的过程中 注意事项:

 layui目前的版本还不支持国际化 ,所以我们现在做的国际化一般都是 thymeleaf 的元素去实现的。

 那我们如何 在layui 模板中 去实现国际化呢?

    注:本篇文章更多注重的是思路 。

 其实 国际化的写法就是  #{ }

1、 页面个个标签里  一般都是   th:text="#{seller.visit.visit.visitPlan.title}"

2、在 script  标签里   一般都是  [[#{seller.visit.visit.visitPlan.Others}]]     用 [[  #{  }  ]]  的写法  

然后具体说下展览项目中实现方式

弹窗模板 国际化

在 layui ifream 模板中  新增/编辑  一般都用弹窗的方式   如果直接弹 弹框的话是不支持 thymeleaf 的 更别说 国际化了。

 所以我们就需要去 controller 用modelAndView 去转一下 以此来达到支持 thymeleaf  

来,上菜 :

/**
 * 跳转弹框页面--一级
 *
 * @return
 */
@RequestMapping("/tpl/{tplUrl1}")
public ModelAndView toTplOne(@PathVariable("tplUrl1") String url) {
    ModelAndView model = new ModelAndView();
    model.setViewName("/tpl/" +url);
    return model;
}

/**
 * 跳转弹框页面--二级
 *
 * @return
 */
 @RequestMapping("/tpl/{tplUrl1}/{tplUr2}")
public ModelAndView toTplTwo(@PathVariable("tplUrl1") String url,@PathVariable("tplUr2") String url2) {
    ModelAndView model = new ModelAndView();
    model.setViewName("/tpl/" +url + url2);
    return model;
}
 

那这个时候呢 我们的弹窗页面 也可以香香的用 th:等各个属性了。

轮到必填提示信息了

layui 在2.50版本之后 支持  对 lay-verify="required" (这个是必填不能为空的校验)  的自定义提示  对你没听错  它来了

 自定义提示   lay-reqText=" 提示内容 "     

回到我们国际化的问题   你会发现上面两种写法 在这里面都不能完成国际化 为什么呢?因为 layui 不支持!

 这时候 我们就要结合 thymeleaf   来完成了

 上代码 : th:attr="lay-reqText=#{login.loginAccountPrompt}"

Other:

  layui 渲染列表数据也有好几种写法  这里针对我们遇到提出国际化思路

图:1-1

前端给我们的是 cols 表头的方式写的!  表头也是需要国际化的呀!

 因为我们所有页面都是这种方式写的 , 打不过 只能顺从 。 

表头实现国际化方式:

 在页面中 引用

<script type="text/javascript" th:inline="javascript">
     var tableColumn =[[#{validate.advertise.adName.length}]];
</script>

这时候  tableColumn  已经是动态中英文了。

然后看上 图:1-1  中     title:tableColumn  就可以实现国际化了

好啦 本次分享就结束啦 ,希望可以帮到大家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值