这篇文章主要介绍基于JS正则表达式如何实现模板数据动态渲染,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
<强>一、业务需求:强>
1。前端后端定义好模板以及变量名,保存数据库
2。订单数据是前端根据支付结果获取的,最终渲染完的数据模板需要调用打印机打印出来
3。模板相对商家来说比较固定,但是每个商家需要的模板都有可能不一样,所以需要每次登录后,查询一次模板缓存前端,后续每次支付后,动态渲染数据即可
<强>二、考点:强>
1。正则表达式
2。精简代码量,尽量减少前端的工作量
<强>三,实现思路:强>
1。需要渲染数据的模板,以${变量名}区分:
<代码> var t=耙?$ {bankName},商家名称:$ {merchantName},订单号:$ {orderNum}“; 代码>
2。正则匹配获取所有变量名
var 键=[]; var arr =, t.match(美元/\ \ {(. * ?)\}/g); (var key  arr拷贝){ arr var 才能;s=[主要].replace (“$ {“,““) .replace (“}”,““); keys.push才能(年代); } 警报(钥匙);
3。组装订单数据,注意变量属性名与模板里的变量名要保持一致
var 订单={ ,“bankName":“工行“, ,“merchantName":“小卖部“, ,“orderNum":“123456”; };
4。渲染数据
为(var 我=0;i5。查看效果:
6。有人会说,直接拼接字符串不是更快?比如:
var t=耙?$ {order.bankName},商家名称:$ {order.merchantName},订单号:$ {order.orderNum} ';这种方式在模板固定且数据量少的时候是挺好用的,但是业务上,虽然模板和数据对于商家来说相对固定,但是系统里面很多商家,每个商家的小票模板可能都不一样,需要渲染的变量也挺多,前端不可能根据每个商家都改一套模板的,总而言之,适合才是最好的!
JavaScript是什么
JavaScript是一种直译式的脚本语言,其解释器被称为JavaScript引擎,是浏览器的一部分,JavaScript是被广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。
以上是“基于js正则表达式如何实现模板数据动态渲染”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
基于JS正则表达式如何实现模板数据动态渲染