前言
之前产品需要一个合同,前端手动复制黏贴生成一个合同页面,因为每次需要修改生成数量内容都不多,前端就几分钟就搞定了。最近来了一大批协议,并且协议里面还需要配置有动态变量,可能协议修改也会变的频繁,那可就不能前端来复制黏贴生成静态页面了。
1.后台配置协议
由后台配置协议内容 如图:
协议里面的变量,格式为${xxxx}。协议变量不多,不想手动输入变量的话可以根据自己选用的富文本编辑器,自定义标签。
我用的是 wangeditor插件,查看了里面有这个操作
2.协议展示页面
是一个协议模版页面,所有的字段都在里面配置,需要显示的字段通过url进行传参。
有人会说所有的参数都拼接在url上面会不会url超限,大概率是不会的。 以下是各个浏览器的url字节长度,ie停了,其他的浏览器都有8000+字节
3.渲染
正常后台配置好的协议内容,会通过接口返回协议内容给前端,然后前端根据协议内容进行渲染到页面。
但是由于协议内容比较多,看了协议word文档一般都有几十页,而且一个页面可能会有几十个协议需要返回,所以用接口请求返回协议内容再渲染会比较慢。
所以协议内容并没有直接返回给前端,而是用另外用html写了一个模版页面,让后端把配置好的协议内容写入模版中,生成链接返回给前端,这样请求速度会快很多
显示页面也是通过内嵌协议链接,并没有直接通过外链打开,所以协议拼的很长很长参数,没有暴露出去