h5改造freemarker模板,js操作freemarker字符串、数组等数据

h5改造成freemarker格式 标签中调用可以直接参考freemarker官方文档
h5页面当中有很多调用后台数据,不使用ajax调用,直接调用freemarker的数据,
js中和标签当中的调用方式基本差不多。
js代码格式:举例字符串和数组格式
字符串

  let snldTitle2 = "${snldTitle2}"

数组需要先定义一个空数组,获取到freemarker的数据之后再遍历到数组当中才可以使用

let snldrqDataArr =[];
  <#if snldrqData??>
      <#list snldrqData as item>
            snldrqDataArr.push({
              route:"${item.route}",
              value:"${item.value}"
            });
      </#list>
  </#if>

后台本地测试代码

package com.bonc.testfm;

import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

//@SpringBootTest
class TestfmApplicationTests {

    @Test
    void contextLoads() {
        Configuration configuration = new Configuration(Configuration.getVersion());
        try {
            //ftl模板文件所在路径
            configuration.setDirectoryForTemplateLoading(new File("E:\\project\\newyear"));
            configuration.setDefaultEncoding("utf-8");
            //ftl模板文件名称
            Template template = configuration.getTemplate("new.ftl");
            Map dataModel = new HashMap<>();
//            省内流动人群
            dataModel.put("snldTitle2", "春节将至 特别想念那个叫家的地方");
            dataModel.put("snldrqData",new ArrayList<HashMap<String,String>>(){{
                add(new HashMap<String, String>(){{
                    put("route","太原市—晋中市");
                    put("value","517592");
                }});
                add(new HashMap<String, String>(){{
                    put("route","太原市—晋中市");
                    put("value","517592");
                }});
                //数组数据push进去,有多少数据push多少
            }});
            //输出路径   会按照此路径生成一个全新的html   打开运行此页面水命正常
            Writer out = new FileWriter(new File("e:\\project\\new.html"));
            try {
                template.process(dataModel, out);
            } catch (TemplateException e) {
                e.printStackTrace();
            }
            out.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JEECMS内容管理系统是国内java开源CMS行业知名度最高、用户量最大的站群管理系统。 功能: 信息管理 ├ 文章 ├ 相册 ├ 多媒体 ├ 视频 ├ 下载 ├ 作品 ├ 产品 ├ 文库 ├ 招聘 互动信息 ├ 留言与反馈 ├ 评论 ├ 投票调查 ├ 在线调查问卷/答卷 ├ 通知公告 ├ 领导信箱 ├ 站内信 ├ 广告管理 用户与权限 ├ 用户管理 ├ 会员组管理 ├ 会员组权限管理 ├ 信息发布审批 ├ 会员浏览权限 ├ 部门管理 ├ 工作流 日志管理 ├ 操作日志 ├ 稿件操作日志 ├ 登录日志 ├ 工作量统计 统计功能 ├ 会员注册统计 ├ 内容统计 ├ 评论统计 ├ 留言统计 ├ PV统计 ├ 独立IP统计 ├ 独立访客统计 ├ 人均浏览次数统计 ├ 来访网站统计 ├ 来访页面统计 ├ 搜索关键字统计 ├ 受访页面统计 ├ 地区分布统计 ├ 统计初始化 发布与部署 ├ 文章静态化 ├ 全站静态化 ├ FTP同步 ├ 服务器分布部署 ├ 批处理 (批量移动文章/栏目、批量删除、批量上传图片/附件等) ├ 一键排版 ├ 定时任务 ├ tag自动提取 站点配置 ├ 网站参数配置 ├ 用户注册配置 ├ RSS配置 ├ RSS订阅 ├ TAG管理 ├ 文件上传配置 ├ 模板管理 ├ 自定义模板 ├ 可视化模板编辑 ├ 全文检索 ├ 友情链接管理 系统管理 ├ 内容关键字管理 ├ 自定义模型管理(自定义栏目/内容模型,一个栏目支持多种内容模型) ├ 网页信息采集 ├ 模块管理 ├ 数据备份与恢复 ├ 网站防火墙 ├ 附件管理 ├ 字典管理 ├ 国际化(前后台可以设置成多语言,目前系统自带后台英文操作菜单) ├ 系统支持PC端、移动端访问 网站群 ├ 节点维护 ├ 节点独立管理 ├ 站点信息共享管理 ├ 站点信息推送 ├ 全站搜索

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值