表格修改方法、装置、非易失性存储介质、及处理器
文献发布时间:2023-06-19 11:45:49
技术领域
本发明涉及数据处理领域,具体而言,涉及一种表格修改方法、装置、非易失性存储介质、及处理器。
背景技术
在互联网应用中,有着各式各样展示数据的需求。其中,表格组件因其展示直观、信息全面等特点,应用场景十分广泛。
在实际业务开发中,经常会出现需要复用表格的情况:多场景下,表格展示、交互完全一致;多场景下,表格展示、交互有细微差别。
针对展示、交互完全一致的场景,复用较为简单,直接给定表格所需配置项即可;针对展示、交互有细微差别的场景(例如:列的数量、交互行为、个别列的展示方式等存在差异),直接给定配置往往不能完全满足业务需求,而重新开发新的表格组件又会导致公共逻辑无法复用。所以,通常的做法是:在表格组件内部添加相应的逻辑来适应不同的业务需求,这样就会导致场景过多时,表格组件中添加的逻辑会变得非常臃肿,维护起来比较麻烦。
针对上述表格修改过程复杂、维护麻烦的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种表格修改方法、装置、非易失性存储介质、及处理器,以至少解决表格修改过程复杂、维护麻烦的技术问题。
根据本发明实施例的一个方面,提供了一种表格修改方法,包括:获取原始表格和差异配置,其中,所述差异配置用于描述标准表格与所述原始表格的差异信息;扫描所述原始表格,得到所述原始表格中的各配置项;扫描所述差异配置,得到所述差异配置中的各修改项;基于所述修改项对所述原始表格中的各配置项进行修改,得到更新项;为所述更新项重新设置组件生成更新表格,并在浏览器中将所述更新表格渲染至页面上。
可选地,基于所述修改项对所述原始表格中的各配置项进行修改包括:比对所述原始表格中各配置项与所述差异配置中各修改项之间的差异项;基于所述差异项对所述原始表格中的各配置项进行修改。
可选地,基于所述差异对所述原始表格中的各配置项进行修改包括:在所述原始表格的配置项中存在对应所述修改项的情况下,判断所述修改项与对应配置项的内容差异;基于所述内容差异修改所述配置项。
可选地,基于所述差异对所述原始表格中的各配置项进行修改包括:在所述原始表格的配置项中不存在第一指定项,并且在所述修改项中存在所述第一指定项的情况下,将所述第一指定项添加在所述原始表格中。
可选地,基于所述差异对所述原始表格中的各配置项进行修改包括:在所述原始表格的配置项中存在第二指定项,并且在所述修改项中不存在所述第二指定项的情况下,在所述原始表格中删除所述第二指定项。
根据本发明实施例的另一方面,还提供了一种表格修改装置,包括:获取单元,用于获取原始表格和差异配置,其中,所述差异配置用于描述标准表格与所述原始表格的差异信息;第一扫描单元,用于扫描所述原始表格,得到所述原始表格中的各配置项;第二扫描单元,用于扫描所述差异配置,得到所述差异配置中的各修改项;修改单元,用于基于所述修改项对所述原始表格中的各配置项进行修改,得到更新表格;渲染单元,用于为所述更新项重新设置组件生成更新表格,并在浏览器中将所述更新表格渲染至页面上。
可选地,所述修改单元包括:比对模块,用于比对所述原始表格中各配置项与所述差异配置中各修改项之间的差异项;修改模块,用于基于所述差异项对所述原始表格中的各配置项进行修改。
可选地,所述修改模块包括:判断模块,用于在所述原始表格的配置项中存在对应所述修改项的情况下,判断所述修改项与对应配置项的内容差异;修改子模块,用于基于所述内容差异修改所述配置项。
根据本发明实施例的另一方面,还提供了一种非易失性存储介质,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行上述所述表格修改方法。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述表格修改方法。
在本发明实施例中,获取原始表格和差异配置,其中,差异配置用于描述标准表格与原始表格的差异信息;扫描原始表格,得到原始表格中的各配置项;扫描差异配置,得到差异配置中的各修改项;基于修改项对原始表格中的各配置项进行修改,得到更新表格;在浏览器中渲染并展示更新表格;达到了快速对表格进行修改的目的,从而实现了快速对表格进行修改和维护的技术效果,进而解决了表格修改过程复杂、维护麻烦技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种表格修改方法的流程图;
图2是根据本发明实施例的一种表格处理方法的示意图;
图3是根据本发明实施例的一种对baseColumns和diffColumns进行对比、合并的示意图;
图4是根据本发明实施例的一种对baseColumns和diffColumns进行对比、合并效果的示意图;
图5是根据本发明实施例的一种应用场景的示意图;
图6是根据本发明实施例的一种表格修改装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种表格修改方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种表格修改方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,获取原始表格和差异配置,其中,差异配置用于描述标准表格与原始表格的差异信息;
步骤S104,扫描原始表格,得到原始表格中的各配置项;
步骤S106,扫描差异配置,得到差异配置中的各修改项;
步骤S108,基于修改项对原始表格中的各配置项进行修改,得到更新项;
步骤S110,为更新项重新设置组件生成更新表格,并在浏览器中将更新表格渲染至页面上。
在本发明实施例中,获取原始表格和差异配置,其中,差异配置用于描述标准表格与原始表格的差异信息;扫描原始表格,得到原始表格中的各配置项;扫描差异配置,得到差异配置中的各修改项;基于修改项对原始表格中的各配置项进行修改,得到更新表格;在浏览器中渲染并展示更新表格;达到了快速对表格进行修改的目的,从而实现了快速对表格进行修改和维护的技术效果,可以将原始表格转换成适应各场景的表格,同时不影响原始表格的各项逻辑,进而解决了表格修改过程复杂、维护麻烦技术问题。
本发明上述实施例,开发者只需使用差异配置描述使用需求与原始表格之间的差异部分,即可对原始表格进行修改和维护;并且通过差异配置对原始表格进行调整,而修改原始表格组件即可将修改的原始表格应用在多种场景中,实现了对原始表格的复用。
可选地,配置项可以是原始表格中的各行或各列,其中,每个配置项配置有对应的表格组件。
可选地,原始表格中的各配置项配置有唯一标识,根据该唯一标识可以确定修改项与配置项的对应关系。
可选地,基于修改项对原始表格中的各配置项进行修改包括:修改原始表格中各配置项的配置信息。
作为一种可选的实施例,基于修改项对原始表格中的各配置项进行修改包括:比对所述原始表格中各配置项与所述差异配置中各修改项之间的差异项;基于差异项对原始表格中的各配置项进行修改。
可选地,比对所述原始表格中各配置项与所述差异配置中各修改项之间的差异项包括:确定修改项与配置项之间的对应关系;比对配置项和对应修改项之间的差异;基于修改项与配置项之间的对应关系,和配置项和对应修改项之间的差异确定差异项。
可选地,差异项指原始表格中需要修改或删除的配置项,以及需要从差异配置中添加至原始表格中的修改项。
可选地,在配置项与对应修改项相同的情况下,可以通过指定该配置项的唯一标识指示直接使用该配置项。
本发明上述实施例,在对原始表格中的各配置项进行修改的过程中,可以先确定原始表格中的配置项与差异配置中的配置项之间的对应关系,确定哪些配置项不具有对应的修改项,哪些修改项不具有对应的配置项,并比对具有对应关系的配置项与修改项之间的内容差异,确定原始表格与差异配置之间的差异项,再基于差异项对原始表格进行修改,达到了快速识别原始表格与差异配置之间差异项的目的,从而可以根据差异项对原始表格进行有针对性的修改和维护,而无需对原始表格的全部内容进行调整,即可将原始表格转换成适应各场景的表格,同时不影响原始表格的各项逻辑;解决了表格修改过程复杂、维护麻烦技术问题。
作为一种可选的实施例,基于差异对原始表格中的各配置项进行修改包括:在原始表格的配置项中存在对应修改项的情况下,判断修改项与对应配置项的内容差异;基于内容差异修改配置项。
可选地,基于修改项与对应配置项的内容差异修改配置项包括:基于内容差异使用修改项替换对应的配置项;或基于内容差异对配置项中的部分内容进行修改,如只修改配置项中的表头。
可选地,确定原始表格中的配置项与差异配置中的配置项之间的对应关系,其对应关系存在以下情况:配置项不具有对应的修改项;修改项不具有对应的配置项,针对这种情况可以选择不同的修改方式对原始表格进行修改。
作为一种可选的实施例,基于差异对原始表格中的各配置项进行修改包括:在原始表格的配置项中不存在第一指定项,并且在修改项中存在第一指定项的情况下,将第一指定项添加在原始表格中。
作为一种可选的实施例,基于差异对原始表格中的各配置项进行修改包括:在原始表格的配置项中存在第二指定项,并且在修改项中不存在第二指定项的情况下,在原始表格中删除第二指定项。
本发明还提供了一种优选实施例,该优选实施例提供了一种支持UI表格组件灵活复用的方案。
本方案的目的是包括:
1)支持不同场景下对表格的展示和交互进行微调。
可选地,不同的场景可能有不同的展示和交互需求,为了满足这些需求,就需要对表格进行微调,例如:修改指定列、删除列、添加列等。其中,修改指定列包括修改列的文字颜色、字体、字号、背景色等列的配置信息。
2)避免复用表格组件时添加过多兼容逻辑。
需要说明的是,如今的Web项目,大多规模庞大,业务复杂。通常情况下,复用场景较少时,在组件内部添加适当的兼容逻辑即可满足需求,而当复用场景过多时,兼容逻辑相应增多,导致组件的可维护性降低;因此需要本方案可以针对表格的不同应用场景分别对原始表格进行调整,从而无需使原始表格同时兼容过多逻辑。
3)减少修改既存组件引起的风险。
需要说明的是,既存的表格组件,大多都趋于稳定,盲目修改可能会影响既存业务,引入不必要的风险;因此需要本方案有针对性地对原始表格进行小范围的修改,从而降低修改风险。
4)提高代码复用程度,减少冗余逻辑。
通常情况下,相同的逻辑理论上只需一次编程,多处适用,达到减少冗余逻辑的目的。
本发明提供的技术方案,可以将原始表格转换成适应各场景的表格,同时不影响原始表格的各项逻辑。
图2是根据本发明实施例的一种表格转换方法的示意图,如图2所示,该方法有两项输入(原始表格、差异配置)和一项输出(适配所在场景的表格)。其中,差异配置用于描述复用场景下的表格与原始表格的差异信息,需包含需要使用的所有列配置。如果差异配置中的某一列与原始表格对应列相比无变化,则该列配置只需指定原始表格中对应列的唯一标识,通常为dataIndex;如果差异配置中的某一列与原始表格对应列存在变化,则需要指定该列需覆盖的配置信息(即基于差异配置中的修改项修改对应的配置项)。
作为一种可选的示例,表格处理流程如下:
1.接收原始表格和差异配置;
2.扫描原始表格的各列配置baseColumns,每列配置项称为baseColumn;
3.扫描差异配置的各列配置diffColumns,每列配置项称为diffColumn;
4.将流程2、3中的baseColumns和diffColumns进行对比、合并,策略如图3所示。
图3是根据本发明实施例的一种对baseColumns和diffColumns进行对比、合并的示意图,如图3所示,若某个diffColumn在baseColumns中不存在匹配的baseColumn,则该diffColumn为新增列,以该diffColumn为准;若某个diffColumn在baseColumns中存在匹配的baseColumn,则将diffColumn中设置的差异项覆盖至baseColumn,其它未设置项保留baseColumn的配置;若某个baseColumn在diffColumns中不存在匹配的diffColumn,则该baseColumn为删除列。
5.将流程4中合并完成的最终列配置项设置给一个全新的列表组件,生成最终表格,由浏览器渲染至页面上。
图4是根据本发明实施例的一种对baseColumns和diffColumns进行对比、合并效果的示意图,如图4所示,删除预览时表格中“Age”列,添加“Address”列。
作为一种可选的应用场景,一个大型的Web项目通常是由多个开发人员协同完成,当开发者B需要复用开发者A编写的表格组件,且部分展示或交互有所差异时,按照传统方式,需要找开发者A修改组件对以支持这部分差异。而采用本方案,开发者B只需要定义一份差异配置用于描述需要新增、删除、修改的列,并将这份差异配置和原始表格输入转换方法,经过转换方法的内部处理后生成一个满足开发者B需求并且可以直接展示的新表格。
图5是根据本发明实施例的一种应用场景的示意图,如图5所示,可以通过修改列的方式,将原始表格中的“Name”列修改为“Address”列;或通过替换列的方式,使用“Address”列替换原始表格中的“Email”列;或通过添加列的方式,在原始表格中添加“Address”列;或通过删除列的方式,删除原始表格中的“Email”列。
本发明提供的技术方案,能够有效避免业务表格组件复用时需要修改组件内部逻辑的情况;开发人员只需要专注于表格组件自身的业务逻辑,无需考虑各个兼容场景;通过差异配置描述需覆盖原表格的部分,简洁明了;不需覆盖原表格的部分仍与原表格保持一致,提高了复用程度,节省人力物力,降低后期开发和维护成本;对于一些特殊场景,本发明还能够对原表格的列进行补充、删除、改变顺序等,灵活性较好。
根据本发明实施例的另一方面,还提供了一种非易失性存储介质,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行上述所述表格修改方法。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述表格修改方法。
根据本发明实施例,还提供了一种表格修改装置实施例,需要说明的是,该表格修改装置可以用于执行本发明实施例中的表格修改方法,本发明实施例中的表格修改方法可以在该表格修改装置中执行。
图6是根据本发明实施例的一种表格修改装置的示意图,如图6所示,该装置可以包括:获取单元60,用于获取原始表格和差异配置,其中,差异配置用于描述标准表格与原始表格的差异信息;第一扫描单元62,用于扫描原始表格,得到原始表格中的各配置项;第二扫描单元64,用于扫描差异配置,得到差异配置中的各修改项;修改单元66,用于基于修改项对原始表格中的各配置项进行修改,得到更新项;渲染单元68,用于为更新项重新设置组件生成更新表格,并在浏览器中将更新表格渲染至页面上。
需要说明的是,该实施例中的获取单元60可以用于执行本申请实施例中的步骤S102,该实施例中的第一扫描单元62可以用于执行本申请实施例中的步骤S104,该实施例中的第二扫描单元64可以用于执行本申请实施例中的步骤S106,该实施例中的修改单元66可以用于执行本申请实施例中的步骤S108,该实施例中的渲染单元68可以用于执行本申请实施例中的步骤S110。上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。
在本发明实施例中,获取原始表格和差异配置,其中,差异配置用于描述标准表格与原始表格的差异信息;扫描原始表格,得到原始表格中的各配置项;扫描差异配置,得到差异配置中的各修改项;基于修改项对原始表格中的各配置项进行修改,得到更新表格;在浏览器中渲染并展示更新表格;达到了快速对表格进行修改的目的,从而实现了快速对表格进行修改和维护的技术效果,可以将原始表格转换成适应各场景的表格,同时不影响原始表格的各项逻辑,进而解决了表格修改过程复杂、维护麻烦技术问题。
作为一种可选的实施例,修改单元包括:比对模块,用于比对所述原始表格中各配置项与所述差异配置中各修改项之间的差异项;修改模块,用于基于差异项对原始表格中的各配置项进行修改。
作为一种可选的实施例,修改模块包括:判断模块,用于在原始表格的配置项中存在对应修改项的情况下,判断修改项与对应配置项的内容差异;修改子模块,用于基于内容差异修改配置项。
作为一种可选的实施例,修改模块包括:添加子模块,用于在原始表格的配置项中不存在第一指定项,并且在修改项中存在第一指定项的情况下,将第一指定项添加在原始表格中。
作为一种可选的实施例,修改模块包括:删除子模块,用于在原始表格的配置项中存在第二指定项,并且在修改项中不存在第二指定项的情况下,在原始表格中删除第二指定项。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
- 表格修改方法、装置、非易失性存储介质、及处理器
- 表格数据处理方法、装置、存储介质和处理器