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

layui + Thymeleaf 国际化_第1张图片

 

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

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

表头实现国际化方式:

 在页面中 引用

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

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

 

 

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

你可能感兴趣的:(layui + Thymeleaf 国际化)