动态模板临时变量

mac2024-06-05  58

动态渲染:后台系统中的动态渲染也是十分常见的功能。 比如: 面板一看就是表格内嵌表单控件的形式,这种形式的特点就是每行的结构格式完全一样,差别只是各自行的数据可修改不同值,且当点击‘添加映射配置’时,面板自动生成一行新的一样的结构来由用户编辑;这样的动态渲染,本质上是其数据模型的改变;表格肯定用数组来渲染,那么面板动态变化说明了表格的数组也是动态变化的,那么数组内元素不能写死; 首先我们定义一个空数组phenomenonGroupList来渲染表格,定义一个初始的对象模型initialObjTemplate,里面包含表格每个字段的属性,我们将这个初始对象从phenomenonGroupList里放进或者拿出,也就动态改变了面板展示,如果初始时想默认最少有一条数据,则可以做判断来默认展示一条: 最后提交时,再将这个用于渲染动态模板的动态数组添加进提交表单即可: 在每一行都有删除该行的操作: 注意:这种动态渲染出来的结构,有一点肯定是唯一的,那就是每个数组元素的序标index,且它是有序的,所以当我们要对某行做操作比如判断或者循环找对应关系时,利用它就很方便。 并且在编辑回显时,我们用临时变量过渡,将遍历得到的字段属性存进其对应的每个row(即每个数组元素): 用临时变量是为了避免使用全局变量时,全局变量过多而导致代码冗余,全局污染;并且减少内存使用;重点是可以避免每行相同字段属性之间的干扰,保证每行属性对应其row都是独立的,把临时变量存进对应的row而不是存进全局变量也是这个原因。 建立数据模型时,并不是说全局的变量就是万金油,也不是临时变量比全局变量好,但可以说合理的初始数据模型(全局的)可以大大简化代码,提高可读性,而在做数据转换时对过渡性的变量用临时变量存储是很快捷方便的。

最新回复(0)