后端map数据,前端转成数组显示

本文介绍了一个Spring Boot项目中,后端使用Thymeleaf拦截器,Controller返回Map数据到前端。为了方便代码书写,前端需要将接收到的Map数据转换为数组形式。在JavaScript中,需要注意使用`th:inline`来正确获取Model中的值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(前言:spring boot项目,使用了Thymeleaf拦截器)
后端controller如下:

    //原料
    QueryWrapper<Ingredient> queryWrapper = new QueryWrapper<>();
    queryWrapper.eq("is_del",2);
    List<Ingredient> list= iIngredientService.list(queryWrapper);
    HashMap<Long, String> map = new HashMap<Long,String>();
	for(int j = 0; j<list.size(); j++){
        map2.put(list.get(j).getId(),list.get(j).getName());
    }
    model.addAttribute("ingredient",map);

返回给前端的数据是
在这里插入图片描述
前端将map数据转化为数组的形式,更便于代码书写

 var ingredient = [[${ingredient}]]// console.log(ingredient)
 //原料
 var ingredients = [];
  //map转数组
     var list = [];
     for (var key in ingredient) {
         list.push( /*或list.push([key, ingredient[key]])*/
             {
                 id:key,
                 name:ingredient[key]
             }
         );

在这里插入图片描述
注意:
js通过model取值必须加上th:inline ,通常在取值的前后会加上不同的注释

<script language='javascript' th:inline="javascript">
 var ingredient =[[${ingredient }]];
</script>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值