有时候我们需要在js中处理来自后端传入的list集合,这在Thymeleaf中是很容易的。以下以Spring Boot+Thymeleaf为例。


后端:

@RequestMapping("/show")
public ModelAndView show() {
    List<String> list = new ArrayList<>();
    list.add("name1");
    list.add("name2");
    list.add("name3");
	ModelAndView modelAndView = new ModelAndView();
    modelAndView.addObject("list", list);
    modelAndView.setViewName("/show");
    return modelAndView;
}

前端:

<script th:inline="javascript">
	function f() {
		let list = [[${list}]];
		for (let i = 0; i < list.length; i++) {
			console.log(list[i]);
		}
	}
</script>

更多的内容和介绍可以查阅Thymeleaf官方文档12.3节,关于JavaScript inlining:链接

网上很多博客写的都很复杂,或是过时,有很多错误。还是看官方文档比较合适。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐