CN117112913B - 数据处理方法、装置、设备及存储介质 - Google Patents

数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117112913B
CN117112913B CN202311368217.3A CN202311368217A CN117112913B CN 117112913 B CN117112913 B CN 117112913B CN 202311368217 A CN202311368217 A CN 202311368217A CN 117112913 B CN117112913 B CN 117112913B
Authority
CN
China
Prior art keywords
search
component
page address
page
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311368217.3A
Other languages
English (en)
Other versions
CN117112913A (zh
Inventor
索菲
王磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202311368217.3A priority Critical patent/CN117112913B/zh
Publication of CN117112913A publication Critical patent/CN117112913A/zh
Application granted granted Critical
Publication of CN117112913B publication Critical patent/CN117112913B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种数据处理方法、装置、设备及存储介质,可以应用于云技术、智慧交通等场景。该方法包括:将实现需求搜索功能的搜索数组、对应的元素组件以及各元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;搜索处理逻辑包括样式处理逻辑;基于封装后组件的展示属性,对封装后组件进行渲染,展示搜索组件;展示属性包括基于样式处理逻辑确定的组件展示样式;将针对搜索组件的输入数据封装至搜索组件所在页面的页面地址,得到目标页面地址;目标页面地址用于在跳转页面中同步输入数据进行搜索。如此,避免重复性工作和出错率,同时实现搜索组件风格的统一,提高开发效率。

Description

数据处理方法、装置、设备及存储介质
技术领域
本申请涉及计算机领域,尤其涉及一种数据处理方法、装置、设备及存储介质。
背景技术
在私有云场景下,通常会需要很多搜索功能,例如高级搜索、表格搜索等。然而,针对不同的私有云产品,需要对应的开发人员自己去实现需求的搜索功能,如此,在实现搜索功能过程中需要做很多重复性工作,非常容易出错,同时各自开发出的搜索组件风格往往不统一,开发效率低。
发明内容
本申请提供了一种数据处理方法、装置、设备及存储介质,以解决现有技术中至少一种技术问题。
一方面,本申请提供了一种数据处理方法,包括:
获取实现需求搜索功能的搜索数组,所述搜索数组包括多个搜索项对应的配置信息;
获取各所述搜索项分别对应的元素组件,并将各所述搜索项对应的配置信息、对应的所述元素组件以及各所述元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;所述搜索处理逻辑包括样式处理逻辑;
基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件;所述展示属性包括基于所述样式处理逻辑确定的组件展示样式;
响应于针对所述搜索组件的输入事件,获取输入数据;
将所述输入数据封装至所述搜索组件所在页面的页面地址,得到目标页面地址;所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索。
另一方面还提供了一种数据处理装置,所述装置包括:
第一获取模块,用于获取实现需求搜索功能的搜索数组,所述搜索数组包括多个搜索项对应的配置信息;
封装模块,用于获取各所述搜索项分别对应的元素组件,并将各所述搜索项对应的配置信息、对应的所述元素组件以及各所述元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;所述搜索处理逻辑包括样式处理逻辑;
渲染模块,用于基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件;所述展示属性包括基于所述样式处理逻辑确定的组件展示样式;
第二获取模块,用于响应于针对所述搜索组件的输入事件,获取输入数据;
处理模块,用于将所述输入数据封装至所述搜索组件所在页面的页面地址,得到目标页面地址;所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索。
另一方面还提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现上述任一所述的数据处理方法。
另一方面还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现上述任一所述的数据处理方法。
另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一所述的数据处理方法。
本申请提供的一种数据处理方法、装置、设备及存储介质,具有如下技术效果:
本申请实施例通过获取实现需求搜索功能的搜索数组,搜索数组包括多个搜索项对应的配置信息;获取各搜索项分别对应的元素组件,并将各搜索项对应的配置信息、对应的元素组件以及各元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;搜索处理逻辑包括样式处理逻辑;基于封装后组件的展示属性,对封装后组件进行渲染,展示搜索组件;展示属性包括基于样式处理逻辑确定的组件展示样式;响应于针对搜索组件的输入事件,获取输入数据;将输入数据封装至搜索组件所在页面的页面地址,得到目标页面地址;目标页面地址用于在跳转页面中同步输入数据进行搜索。如此,通过对搜素数组、元素组件和所绑定的搜索处理逻辑进行封装,可以基于统一的封装后组件来实现搜索功能,避免重复性工作和出错率。同时,搜索处理逻辑中包括样式处理逻辑,该样式处理逻辑与元素组件、搜索数组封装在一起,实现搜索组件风格的统一,提高开发效率。此外,通过将输入数据封装至搜索组件所在页面的页面地址,以获得用于在跳转页面中同步输入数据进行搜索的目标页面地址,增加了搜索同步功能,简化输入操作步骤,提高搜索处理效率和分享效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种数据处理方法的流程示意图;
图2是本申请实施例提供的一种高级搜索组件的界面示意图;
图3是本申请实施例提供的一种搜索数组的代码示意图;
图4是本申请实施例提供的另一种数据处理方法的部分流程示意图;
图5是本申请实施例提供的另一种数据处理方法的流程示意图;
图6是本申请实施例提供的另一种数据处理方法的部分流程示意图;
图7是本申请实施例提供的一种表格搜索同步处理步骤的部分流程示意图;
图8是本申请实施例提供的一种表格搜索组件的界面示意图;
图9是本申请实施例提供的一种数据处理装置的结构框图;
图10是本申请提供的一种用于实现本申请实施例所提供的方法的电子设备的硬件结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于理解本申请实施例上述的技术方案,针对本申请实施例中涉及的技术或关键名词进行简单介绍:
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云计算(Cloud Computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
私有云(Private Cloud)是将云基础设施与软硬件资源创建在防火墙内,以供机构或企业内各部门共享数据中心内的资源。 创建私有云,除了硬件资源外,一般还有云设备(IaaS,Infrastructure as a Service,基础设施即服务)软件。
私有云计算同样包含云硬件、云平台、云服务三个层次。不同的是,云硬件是用户自己的个人电脑或服务器,而非云计算厂商的数据中心。云计算厂商构建数据中心的目的是为千百万用户提供公共云服务,因此需要拥有几十上百万台服务器。私有云计算,对个人来说只服务于亲朋好友,对企业来说只服务于本企业员工以及本企业的客户和供应商,因此个人或企业自己的个人电脑或服务器已经足够用来提供云服务。
在私有云场景下,通常会需要很多搜索功能,例如高级搜索、表格搜索等。然而,针对不同的私有云功能,需要对应的开发自己去实现需求的搜索功能,如此,在实现搜索功能过程中需要做很多重复性工作,非常容易出错,同时各自开发出的搜索组件风格往往不统一,开发效率低。
鉴于此,本申请提供一种数据处理方法、装置、设备及存储介质,在该方法中,通过获取实现需求搜索功能的搜索数组,搜索数组包括多个搜索项对应的配置信息;获取各搜索项分别对应的元素组件,并将各搜索项对应的配置信息、对应的元素组件以及各元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;搜索处理逻辑包括样式处理逻辑;基于封装后组件的展示属性,对封装后组件进行渲染,展示搜索组件;展示属性包括基于样式处理逻辑确定的组件展示样式;响应于针对搜索组件的输入事件,获取输入数据;将输入数据封装至搜索组件所在页面的页面地址,得到目标页面地址;目标页面地址用于在跳转页面中同步输入数据进行搜索。如此,通过对搜素数组、元素组件和所绑定的搜索处理逻辑进行封装,可以基于统一的封装后组件来实现搜索功能,避免重复性工作和出错率。同时,搜索处理逻辑中包括样式处理逻辑,该样式处理逻辑与元素组件、搜索数组封装在一起,实现搜索组件风格的统一,提高开发效率。此外,通过将输入数据封装至搜索组件所在页面的页面地址,以获得用于在跳转页面中同步输入数据进行搜索的目标页面地址,增加了搜索同步功能,简化输入操作步骤,提高搜索处理效率和分享效率。
需要说明的是,本申请涉及到用户信息等相关的数据,当本申请以下实施例运用到具体产品或技术中时,需要获得用户许可授权或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图1是本申请实施例提供的一种数据处理方法的流程示意图。本申请提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。该数据处理方法的执行主体可以是本申请实施例提供的数据处理装置,或者集成了该数据处理装置的电子设备,其中,该数据处理装置可以采用硬件或者软件的方式实现。如图1所示,该方法可以包括:
S101:获取实现需求搜索功能的搜索数组,搜索数组包括多个搜索项对应的配置信息。
其中,搜索数组可以是针对需求搜索功能的字段内容。该需求搜索功能可以包括高级搜索功能和表格搜索功能,或者可以包括输入框、下拉框、时间筛选框、多选框等至少一种组件的搜索功能,当然,还可包括开发人员的个性化搜索功能或扩展搜索功能等等。
搜索数组包括多个搜索项对应的配置信息,该多个搜索项至少包括搜索按钮对应的搜索项和至少一个搜索条件对应的搜索项。各搜索项对应的配置信息可以包括公共参数和非公共参数。
公共参数可以包括用于表征搜索项标识的参数(paramKey)、用于表征搜索项的标题参数(title)、用于表征搜索项的提示符号参数(tips)、用于表征搜索项的展示宽度参数(span)等等一种或多种。仅作为示例,各公共参数的具体定义可以如下表所示:
非公共参数可以包括用于表征搜索项的类型(type)、用于表征搜索项对应默认属性参数(props)、用于表征时间选择组件的配置参数(config)等等一种或多种。仅作为示例,各非公共参数的具体定义如下表所示:
承接上表:
在实际应用中,如图2所示,为了实现图2中的高级搜索功能,针对该高级搜索功能的各元素组件,可以定义如图3所示的搜索数组。该搜索数组包括“名称”的输入框、“公司”的输入框、多选搜索项、单选项、时间选择项、月份选择项、时间范围选择项、时间筛选搜索项等多个搜索项,每个搜索项中分别定义有详细的配置信息。
S103:获取各搜索项分别对应的元素组件,并将各搜索项对应的配置信息、对应的元素组件以及各元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;搜索处理逻辑包括样式处理逻辑。
其中,元素组件可以是用于构建搜索组件的基础组件,例如输入框、下拉框、时间选择框等。可以先通过解析多个搜索项对应的配置信息,得到各搜索项对应的需求组件类型,再从组件库中查找与各需求组件类型对应的元素组件。
搜索处理逻辑是用于在封装后的组件里面执行的功能逻辑。该搜索处理逻辑至少包括样式处理逻辑,还可以包括但不限于默认值处理逻辑、回车事件处理逻辑中至少一种。其中,样式处理逻辑用于确定组件展示样式,默认值处理逻辑用于调整组件展示初始化的默认值,回车事件处理逻辑用于处理触发回车事件所执行的操作。
可选地,在获取各搜索项分别对应的元素组件之后,可以基于各搜索项的搜索项标识,将各搜索项对应的配置信息、对应的元素组件以及各元素组件所绑定的搜索处理逻辑进行封装,整合成一个个统一的组件,得到封装后组件。
S105:基于封装后组件的展示属性,对封装后组件进行渲染,展示搜索组件;展示属性包括基于样式处理逻辑确定的组件展示样式。
可选地,从封装后组件中确定用于渲染的展示属性,并将该展示属性传入渲染函数进行组件渲染,以在界面中展示对应的搜索组件。该展示属性包括基于样式处理逻辑确定的组件展示样式,示例性的,该组件展示样式可以包括但不限于组件展示数量、组件展示布局等等。其中,组件展示数量表示每行展示的组件数量;组件展示布局表示搜索组件中各元素组件的排布方式,例如矩阵排布、队列排布等等。
在一可选实施方式中,在组件展示样式包括组件展示数量的情况下,基于封装后组件的展示属性,对封装后组件进行渲染,展示搜索组件之前,上述方法还包括:
在封装后组件中,基于各元素组件对应的组件展示宽度和获取的组件外层布局宽度,动态确定当前每行的组件展示数量;
将组件展示数量与各配置信息中包含的基本展示属性,作为封装后组件的展示属性。
其中,组件展示宽度可以为各元素组件对应搜索项内配置的展示宽度参数的值(例如span参数的值)。组件外层布局宽度可以是组件外层的展示宽度参数的值,其可以用于反映展示界面的宽度。组件展示数量用于表示界面中每行最多展示多少个元素组件,例如1个、2个、3个等等。基本展示属性可以包括展示类型(例如type参数的值)、是否收起(例如defaultCollapsed参数的值)、列间距(例如gap参数的值)、标签宽度(例如labelWidth参数的值)等等。
在实际应用中,以应用于React框架为例,可以通过React框架的useRef()方法将组件外层DOM(Document Object Model,文档对象模型)保存,并在组件加载时,添加resize事件(当浏览器窗口发生变化时触发)。接着,基于样式处理逻辑,判断当前元素组件是否设置了展示宽度参数(即span参数),若设置span参数,则以配置的span参数作为组件展示宽度,并结合组件外层布局宽度进行计算当前每行的组件展示数量;若未设置span参数,则以预设组件宽度作为组件展示宽度,并结合组件外层布局宽度来计算当前每行的组件展示数量。
具体地,在组件渲染前,组件内部可以基于展示属性中的defaultCollapsed参数的值来决定当前渲染出来的组件数量,例如收起状态下展示包含搜索按钮在内可以只保留一行,展开状态下多行搜索按钮可能会和至少部分组件展示在同一行也可能单独展示一行。在加载渲染时,可以根据组件外层布局宽度和每个元素组件对应的组件展示宽度,基于样式处理逻辑计算当前每行可以容下几个搜索项。
具体示例性的,以组件外层布局宽度为24例进行计算,若当前元素组件未设置展示宽度参数(即span参数),则以预设组件宽度(例如8)作为组件展示宽度来计算,将用当前元素组件所在行的组件外层布局宽度去除以预设组件宽度,且使用向下取整的计算逻辑来计算当前每行的组件展示数量,保证每行的组件都有完整的大小展示,这里每行可以容纳3个搜索项。若当前元素组件有span参数,则以配置的span参数作为组件展示宽度进行计算,组件内的优先级高于组件外的span参数;若对于第n行,当span参数的值累加并加上搜索按钮的宽度的和值大于组件外层布局宽度时,则除去当前元素组件保留前面的全部组件,并调整当前元素组件展示在第n+1行。
此外,当组件外层布局宽度特别窄时,例如一行只能展示一个组件的情况下,会默认将搜索组件和搜索按钮分开展示两行,即其中一行为搜索组件,另一行为搜索按钮。当点击展开收起按钮时,则对各元素组件进行重新渲染,组件若不能在当前行全部展示时将动态换行到下一行展示;通过计算组件展示宽度的和值且在其小于等于组件外层布局宽度保持不换行,当加上当前组件的组件展示宽度的和值大于组件外层布局宽度时,则换行展示,以保证组件完整展示。在确定当前每行的组件展示数量之后,可以与配置信息中包含的基本展示属性一起作为封装后组件所确定的展示属性。
如此,基于样式处理逻辑来动态确定当前每行的组件展示数量,并结合配置信息中包含的基本展示属性,作为封装后组件的展示属性,以便于灵活渲染封装后组件,如此在界面大小发生变化时,能够根据界面大小适配显示适合当前页面个数的元素组件,保证展示效果,支持搜索组件在不同尺寸的屏幕上展示。
S107:响应于针对搜索组件的输入事件,获取输入数据。
可选地,账户对象可以在展示的搜索组件中执行输入事件,例如在输入框中输入搜索字符串、选择搜索对象、选择搜索时间等,通过捕捉该输入事件,获取用于反映搜索条件的输入数据。
S109:将输入数据封装至搜索组件所在页面的页面地址,得到目标页面地址;目标页面地址用于在跳转页面中同步输入数据进行搜索。
其中,页面地址可以是统一资源定位系统(uniform resource locator,URL)。示例性的,其可以是浏览器URL,例如http://www.XXX.com。目标页面地址是将输入数据封装添加至页面地址后的地址,例如http://www.XXX.com?name=111。跳转页面是基于目标页面地址跳转展示的页面。
在一可选实施方式中,将输入数据封装至搜索组件所在页面的页面地址,得到目标页面地址包括:
获取搜索组件所在页面的页面地址,并将页面地址中参数转换为地址参数对象;
调用地址同步方法,基于地址参数对象和输入数据对应的输入参数对象,生成目标页面地址。
可选地,首先获取页面地址,之后使用queryString.parse方法将页面地址中参数转换为地址参数对象。这里也适用于iframe(内嵌框架,即HTML 中一种用于将一个网页嵌入到另一个网页中的标签)的情况,保证可以获取嵌入的基座应用的window.top上的页面地址,保证拿到的是浏览器URL上的参数。
接着,调用地址同步方法,例如调用同步URL参数的方法,该方法接受两个参数,第一个参数为要同步的新的参数对象,即输入数据对应的输入参数对象,第二个参数为是否清除原有参数。当第二个参数的值为真(即ture),则直接将使用queryString.stringify方法生成新的URL参数对象(例如name=111),作为输入数据对应的输入参数对象;如果第二个参数的值为假(即false),则将第一个参数(即输入数据对应的输入参数对象)合并到目前URL参数的后面覆盖掉相同的值,默认情况下第二个参数的值为假。随后使用window.history.replaceState方法同步到浏览器URL上,即基于地址参数对象和输入数据对应的输入参数对象,生成目标页面地址。
在生成目标页面地址中会使用清除URL参数方法,该方法接受一个数组,数组内包含要保留的参数的key,并将地域参数默认添加到保留参数中,通过queryString.parse()方法拿到当前全部的参数,通过map()方法映射全部参数并派出保留数组中的值,其余值赋值undefined,然后调用同步URL方法修改浏览器URL,以清除URL参数。
示例性的,在输入框里面输入的值,比如name=“123”,company=“344”,点击搜索按钮,通过把这两个数据同步到浏览器URL(http://www.XXX.com)上,就会变成http://www.XXX.com?name=123&company=344,此时界面同步也会出现对应的搜索结果。之后,通过把上面的同步后的URL链接分享给其他账户对象,其他账户对象点击这个同步后的URL链接,就会进入到我们当前的界面,通过解析该同步后的URL,会把其中name=123和 company=456解析下来且填充至对应的输入框中,即将解析得到的“123”填充至“name”对应的输入框中,且将“456”填充至“company”对应的输入框中,并进行自动搜索,就会得到和原来分享前的界面结果是一样的搜索结果。通过调用地址同步方法将输入数据封装至搜索组件所在页面的页面地址以获得目标页面地址,减少代码开发量,提高开发效率。
在一可选实施方式中,如图4所示,在搜索处理逻辑还包括默认值处理逻辑的情况下,基于封装后组件所传入的展示属性,对封装后组件进行渲染,展示搜索组件之前,上述方法还包括:
S401:确定搜索数组中包含非空的默认属性的目标搜索项;
S403:从搜索数组中提取目标搜索项的搜索项标识和对应的默认属性的值,组成键值对数组并存储;存储的键值对数组用于在渲染时加载以展示在搜索组件中。
可选地,组件渲染前会遍历搜索数组,确定含有默认属性(defaultValue)的值的目标搜索项,也即确定搜索数组中包含非空的默认属性的目标搜索项。从搜索数组中收集提取目标搜索项的搜索项标识(paramkey)和对应的defaultValue的值组成键值对数组,存储该键值对数组并同步给URL同步方法。在组件渲染时,将默认值加载以默认值的形式展示在搜索组件中,并通过同步URL方法同步到浏览器URL。
相应的,继续如图4所示,上述方法还包括:
S405:响应于针对搜索组件的重置任务事件,将存储的键值对数组中的默认属性的值合并至搜索组件中对应的搜索项的输入数据,并覆盖对应的输入数据,作为搜索组件中的当前展示数据;
S407:将当前展示数据同步至搜索组件所在页面的页面地址,更新目标页面地址。
可选地,在搜索组件中的重置按钮触发重置任务事件时,首先会遍历全部的paramKey参数并赋值undefined,然后将组件加载前收集的默认值合并在当前值的后面覆盖掉前面的值;然后调用同步URL方法同步URL,更新目标页面地址,随后调用callback()并将前面收集的值返回传给回调函数,展示重置后的搜索组件。从而通过在搜索处理逻辑中引入默认值处理逻辑和重置任务事件,在无需重复开发工作量的情况下,统一扩展搜索组件的功能,提高搜索组件的场景适配性。
在一可选实施方式中,如图5所示,搜索组件包括提交元素组件,搜索处理逻辑还包括回车事件处理逻辑;响应于针对搜索组件的输入事件,获取输入数据之后,方法还包括:
S501:基于回车事件处理逻辑监测针对搜索组件的回车事件,获取回车事件的事件对象的属性值;
S503:在确定事件对象的属性值为预设属性值,控制提交元素组件执行高级搜索操作或表格搜索操作。
可选地,在组件加载前,获取组件元素,监测组件的回车事件(例如keydown事件),可以通过addEventListener事件监测方法监测该keydown事件。在keydown事件中,通过event对象的keyCode属性来判断按下的键是否为回车键(例如keyCode为13)。如果确定事件对象的属性值为预设属性值(例如13),则确定触发的是回车键,则控制提交元素组件执行高级搜索操作或表格搜索操作,即执行提交按钮的流程。从而通过在搜索处理逻辑中引入回车事件处理逻辑,实现回车搜索功能,简化搜索操作交互,提高用户体验。
在一可选实施方式中,如图6所示,上述方法还包括:
S601:响应于针对搜索组件的搜索事件,将输入数据中的数值赋值给封装后组件中相应的搜索项,获得搜索条件参数;搜索条件参数用于确定初始搜索结果;
S603:在检测到搜索数组中存在目标模板类型,基于目标模板类型对应的目标数据返回模板对初始搜索结果进行格式处理,得到目标搜索结果;
S605:将目标搜索结果通过回调函数返回并展示。
可选地,在搜索组件中的搜索按钮触发搜索事件时,首先收集当前搜索组件全部项的值,一种为paramKey参数为单个字符串的值,需要将组件内输入数据中的数值赋给当前的paramKey参数,另一种是自定义组件内存在多个paramKey参数,先判断数组内是否含有paramKey参数,含有paramkey参数的时候找到paramkey参数后并将输入数据中的数值赋给当前paramKey参数;然后通过同步URL方法同步数据到浏览器URL。基于赋值后的搜索条件参数获取初始搜索结果,判断组件属性dataTemplate是否含有模版信息,若有目标模版类型,则将存在的目标模版类型对初始搜索结果进行格式处理后,调用callback()并将返回的数据作为目标搜索结果传给回调函数,若没有设置dataTemplate属性,则直接将初始搜索结果作为值传给回调函数返回。从而借助搜索数组中的模板类型属性来对搜索结果进行格式处理,优化目标搜索结果展示效果,能够满足各种私有云产品的需求。
在一可选实施方式中,在一些场景下,可以使用React框架中的一个高级APIforwardRef,用于将ref参数从父组件传递给子组件,该ref参数会暴露isHaveUrlParams和getSearchData 两个函数,用以获取当前 URL 的数据。通常情况下,ref参数只能在组件内部使用,不能从组件外部直接访问。通过React.forwardRef方法将一个函数式组件转换成一个可转发的引用。该方法接受一个函数作为参数,该函数接受props和ref两个参数,并返回一个React元素。在该函数中,可以通过ref参数访问子组件内部的DOM元素或组件实例。从而实现组件外直接获取组件内部数据的能力,而不需要通过依赖提交来获取组件内数据。
需要说明的是,本申请的上述数据处理方法既适用于高级搜索组件(例如图2),也适用于表格搜索组件(例如图8),当然,也适用于其他简单搜索组件或更复杂的搜索组件。
此外,在搜索处理过程中,可以提供模糊搜索的功能,方便用户快速和精准的搜素,提高搜索效率和准确率。
在一可选实施方式中,如图7所示,在目标搜索结果通过分页表格形式展示的情况下,上述方法还包括:
S701:获取针对目标搜索结果的表格操作数据,表格操作数据包括当前页结果展示条数、当前结果展示页码、针对目标搜索结果的筛选参数值、针对目标搜索结果的参数排序顺序中一种或多种;
S703:清除目标页面地址中已同步的表格数据,将表格操作数据同步至清除后的目标页面地址,得到同步后的页面地址。
可选地,在通过表格获取数据的时候,获取针对目标搜索结果的表格操作数据,把对应的所有参数都统计下来,将表格操作数据同步到清除后的目标页面地址(例如浏览器URL),得到同步后的页面地址,来实现记忆功能,具体包括如下几个部分:
(1).同步页数和下标。表格下方通常有选择每页展示的条数(pageSize)(即当前页结果展示条数),第几页(pageIndex)(即当前结果展示页码),通过在表格初始化调用的时候就会把当前的pageSize和pageIndex同步到浏览器URL,也就包括pageIndex=1&pageSize=20。
(2).同步搜索的数据,搜索的种类比较复杂,对于输入框,筛选框,多选框等,通过对不同的种类分别处理,因为在搜索时候会传入表格搜索组件搜索的参数:
{
type: 'input',
key: 'name',
name:‘主机名’
}
根据账户对象在搜索框的输入(例如test),会把当前上方的key和输入数据内容同步到浏览器URL,即name=“test”,浏览器URL就会变成包括pageIndex=1&pageSize=20&name=test。
(3).同步筛选功能。表格搜索组件支持筛选需要配置下面参数,例如会有key,options(即下拉框选择的数据),通过选中筛选的时候会把上方的key和选中的值整合,也就是age=youth即针对目标搜索结果的筛选参数值,同步浏览器URL防止筛选和搜索相同,通过在key值前面加f_age=youth,就会变成包括pageIndex=1&pageSize=20&name=test&f_age=youth。
filter: {
key:'age',
options: [
{ value: 'teenager', text: '少年' },
{ value: 'youth', text: '青年' },
{ value: 'middle-aged', text: '中年' },
{ value: 'elder', text: '老年' }
],
}
(3).同步排序功能。根据key选择排序顺序,增加s_开头防止key重复,并把排序顺序,例如s_time=desc即针对目标搜索结果的参数排序顺序,同步浏览器URL,此时浏览器URL变成包括:
pageIndex=1&pageSize=20&name=test&f_age=youth&s_time=desc。
(4).在每次同步数据到URL数据时,首先可以把原来表格搜索组件已同步上去的值先清除,以防止脏数据残留,也就是把所有值只设置undefined,会自动清除掉同步的内容,重新同步,得到同步后的页面地址。
在私有云场景下,表格(如图8所示)是非常常用的组件,提供数据展示的功能,但是在有些情况下通过需要设置自带记忆功能的,比如在搜索了某个参数后,把当前的链接分享给其他账户对象,若想其他账户对象能通过当前链接显示的内容是和分享前一摸一样的显示,而不是又要重新搜索。该记忆功能包括:1)搜索记忆,在右边搜索框中搜索了数据后,通过把数据同步到URL上,作为当前搜索的记忆,以key=value键值对形式保存。2)筛选记忆,在使用表格头部的筛选后,会记住当前筛选的内容,记住当前的筛选的条件。3)排序记忆,在通过表格头部进行排序后,例如已时间先后顺序来排序,会记住当前排序的字段和以递增和递减的顺序排序。
相应的,继续如图7所示,上述方法还包括:
S705:响应于在共享页面对同步后的页面地址的请求操作,从同步后的页面地址中解析出表格操作数据;
S707:将表格操作数据传入表格搜索组件中,恢复展示目标搜索结果对应的操作后页面。
可选地,响应于在共享页面对同步后的页面地址的请求操作,从同步后的页面地址中解析出表格操作数据;以及将表格操作数据传入表格搜索组件中,恢复展示目标搜索结果对应的操作后页面。即把上面同步到URL的数据从浏览器URL恢复到组件中来,例如搜索的数据、当前页结果展示条数、当前结果展示页码、筛选的数据、排序的数据都统一恢复下来,具体如下:
(1).恢复页数和第几页,通过把URL中获取到pageIndex(即当前页结果展示条数)、pageSize的数据(即当前结果展示页码),在共享页面中的组件初始化时同步到组件中。
(2).恢复排序数据,根据排序的类型判断,把排序的key加上s_,就会变成s_key,从浏览器URL读取到排序同步数据作为排序的数据,放到数组里面[{by:”time”,order:”asec”}],保存到共享页面中的组件中为预设数据。
(3).同步筛选数据,因为筛选的时候有单选和多选,且每种对应的数据类型不一样,例如多选对应的数组,单选对应的值,可以将不同的类型的筛选数据判断整和成数组[{field:‘age’,value:’young’}]作为筛选的数据,传入到共享页面中的组件形成默认值。
(4).同步搜索数据,搜索时类型最多的,例如有输入、单选、多选等,可以根据的数据类型不同来整合数据,多选是数组,则values就设置为数组,若是单选就会设置成value,将各搜索的数据保存成{attr:‘name’,value:’test’|[‘test’,’test1’]}这样的数据结构,传入到共享页面中的搜索组件来使用。
如此,通过记忆当前表格所有的操作,例如每页显示的页面、第几页、搜索的内容、筛选的内容和排序的内容,把所有的数据同步到浏览器URL上,如此在分享的时候是以当前的浏览器URL给用户,在新的共享界面打开后,以同步的方式的解析URL的数据快速展示到新的表格搜索组件中,无需额外的输入操作,保证恢复成同样的界面。
上述实施例,通过获取实现需求搜索功能的搜索数组,搜索数组包括多个搜索项对应的配置信息;获取各搜索项分别对应的元素组件,并将各搜索项对应的配置信息、对应的元素组件以及各元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;搜索处理逻辑包括样式处理逻辑;基于封装后组件的展示属性,对封装后组件进行渲染,展示搜索组件;展示属性包括基于样式处理逻辑确定的组件展示样式;响应于针对搜索组件的输入事件,获取输入数据;将输入数据封装至搜索组件所在页面的页面地址,得到目标页面地址;目标页面地址用于在跳转页面中同步输入数据进行搜索。如此,通过对搜素数组、元素组件和所绑定的搜索处理逻辑进行封装,可以基于统一的封装后组件来实现搜索功能,避免重复性工作和出错率。同时,搜索处理逻辑中包括样式处理逻辑,该样式处理逻辑与元素组件、搜索数组封装在一起,实现搜索组件风格的统一,提高开发效率。
此外,通过将输入数据封装至搜索组件所在页面的页面地址,以获得用于在跳转页面中同步输入数据进行搜索的目标页面地址,增加了搜索同步功能,简化输入操作步骤,提高搜索处理效率和分享效率。
此外,由于封装后组件包含搜索处理逻辑,通过将一些需求功能逻辑添加至该搜索处理逻辑中一起封装,可以保证搜索组件的需求功能,避免独自开发导致的部分功能缺失的问题。
下述为本申请装置实施例,可以用于执行本申请方法实施例中的步骤。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图9是本申请实施例提供的一种数据处理装置的结构框图。该数据处理装置具有实现上述方法示例中的功能,功能可以由硬件实现,也可以由硬件执行相应的软件实现。参见图9所示,数据处理装置可以包括:
第一获取模块910,用于获取实现需求搜索功能的搜索数组,所述搜索数组包括多个搜索项对应的配置信息;
封装模块920,用于获取各所述搜索项分别对应的元素组件,并将各所述搜索项对应的配置信息、对应的所述元素组件以及各所述元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;所述搜索处理逻辑包括样式处理逻辑;
渲染模块930,用于基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件;所述展示属性包括基于所述样式处理逻辑确定的组件展示样式;
第二获取模块940,用于响应于针对所述搜索组件的输入事件,获取输入数据;
处理模块950,用于将所述输入数据封装至所述搜索组件所在页面的页面地址,得到目标页面地址;所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索。
在一可选实施方式中,在组件展示样式包括组件展示数量的情况下,所述装置还包括:
第一确定模块,用于在所述封装后组件中,基于各所述元素组件对应的组件展示宽度和获取的组件外层布局宽度,动态确定当前每行的组件展示数量;
第二确定模块,用于将所述组件展示数量与各所述配置信息中包含的基本展示属性,作为所述封装后组件的展示属性。
在一可选实施方式中,在所述搜索处理逻辑还包括默认值处理逻辑的情况下,所述装置还包括:
第三确定模块,用于确定所述搜索数组中包含非空的默认属性的目标搜索项;
存储模块,用于从所述搜索数组中提取所述目标搜索项的搜索项标识和对应的默认属性的值,组成键值对数组并存储;存储的所述键值对数组用于在渲染时加载以展示在所述搜索组件中。
在一可选实施方式中,所述装置还包括:
合并模块,用于响应于针对所述搜索组件的重置任务事件,将存储的所述键值对数组中的默认属性的值合并至所述搜索组件中对应的搜索项的输入数据,并覆盖对应的输入数据,作为所述搜索组件中的当前展示数据;
更新模块,用于将所述当前展示数据同步至所述搜索组件所在页面的页面地址,更新所述目标页面地址。
在一可选实施方式中,所述搜索组件包括提交元素组件,所述搜索处理逻辑还包括回车事件处理逻辑;所述装置还包括:
监测模块,用于基于所述回车事件处理逻辑监测针对所述搜索组件的回车事件,获取所述回车事件的事件对象的属性值;
搜索控制模块,用于在确定所述事件对象的属性值为预设属性值,控制所述提交元素组件执行高级搜索操作或表格搜索操作。
在一可选实施方式中,所述处理模块包括:
第一处理子模块,用于获取所述搜索组件所在页面的页面地址,并将所述页面地址中参数转换为地址参数对象;
第二处理子模块,用于调用地址同步方法,基于所述地址参数对象和所述输入数据对应的输入参数对象,生成所述目标页面地址。
在一可选实施方式中,所述装置还包括:
赋值模块,用于响应于针对所述搜索组件的搜索事件,将所述输入数据中的数值赋值给所述封装后组件中相应的搜索项,获得搜索条件参数;所述搜索条件参数用于确定初始搜索结果;
格式处理模块,用于在检测到所述搜索数组中存在目标模板类型,基于所述目标模板类型对应的目标数据返回模板对所述初始搜索结果进行格式处理,得到目标搜索结果;
返回模块,用于将所述目标搜索结果通过回调函数返回并展示。
在一可选实施方式中,在所述目标搜索结果通过分页表格形式展示的情况下,所述装置还包括:
操作数据获取模块,用于获取针对所述目标搜索结果的表格操作数据,所述表格操作数据包括当前页结果展示条数、当前结果展示页码、针对所述目标搜索结果的筛选参数值、针对所述目标搜索结果的参数排序顺序中一种或多种;
操作同步模块,用于清除所述目标页面地址中已同步的表格数据,将所述表格操作数据同步至清除后的目标页面地址,得到同步后的页面地址。
在一可选实施方式中,所述装置还包括:
解析模块,用于响应于在共享页面对所述同步后的页面地址的请求操作,从所述同步后的页面地址中解析出所述表格操作数据;
恢复模块,用于将所述表格操作数据传入表格搜索组件中,恢复展示所述目标搜索结果对应的操作后页面。
需要说明的是:上述实施例提供的数据处理装置在执行过程时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。此外,上述实施例提供的数据处理装置与数据处理方法实施例属于同一构思,未在上述装置实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的方法,在此不再赘述。
本申请实施例提供了一种电子设备,该设备可以包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例任一所述的方法。
进一步地,图10是提供的一种用于实现本申请实施例所提供的方法的电子设备的硬件结构示意图。参照图10,电子设备包括处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行存储器上所存放的指令时,实现上述实施例中任一方法的步骤。
图10是根据一示例性实施例示出的一种用于数据处理的电子设备的框图,该电子设备1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,CPU)1010(处理器1010可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1030,一个或一个以上存储应用程序1023或数据1022的存储介质1020(例如一个或一个以上海量存储设备)。其中,存储器1030和存储介质1020可以是短暂存储或持久存储。存储在存储介质1020的程序可以包括一个或一个以上模块,每个模块可以包括对电子设备中的一系列指令操作。更进一步地,中央处理器1010可以设置为与存储介质1020通信,在电子设备1000上执行存储介质1020中的一系列指令操作。
电子设备1000还可以包括一个或一个以上电源1060,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1040,和/或,一个或一个以上操作系统1021,例如Windows Server,Mac OS X,Unix, Linux,FreeBSD等等。
输入输出接口1040可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备1000的通信供应商提供的无线网络。在一个实例中,输入输出接口1040包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个示例性实施例中,输入输出接口1040可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图10所示的结构仅为示意,其并不对上述电子设备的结构造成限定。例如,电子设备1000还可包括比图10中所示更多或者更少的组件,或者具有与图10所示不同的配置。
本申请实施例还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现上述任一所述的方法。例如,存储介质包括指令的存储器,上述指令可由电子设备1000的处理器执行以完成上述方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一所述的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
获取实现需求搜索功能的搜索数组,所述搜索数组包括多个搜索项对应的配置信息;所述配置信息包括所述搜索项的基本展示属性、和与时间筛选相关的时间配置对象,所述基本展示属性包括展示类型、是否收起、列间距和展示宽度中一种或多种,所述时间配置对象具有至少一个时间配置参数和对应的时间单位参数,所述时间配置参数用于表征筛选时间与当前搜索时间之间的时间间隔的数值,所述时间单位参数用于表征所述时间间隔所属的时间单位;
获取各所述搜索项分别对应的元素组件,并将各所述搜索项对应的配置信息、对应的所述元素组件以及各所述元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;所述搜索处理逻辑包括样式处理逻辑;
基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件;所述展示属性包括所述基本展示属性和基于所述样式处理逻辑确定的组件展示样式;所述搜索组件包括所述时间配置对象对应的时间筛选组件,所述时间筛选组件的数量与所述时间配置对象中的时间配置参数的数量相匹配;
响应于针对所述搜索组件的输入事件,获取输入数据;
将所述输入数据封装至所述搜索组件所在页面的页面地址,得到目标页面地址;在生成所述目标页面地址的过程中,若清除所述页面地址中无需保留的参数,则直接生成所述输入数据对应的输入参数对象,所述输入参数对象用于生成所述目标页面地址;若未清除所述页面地址中无需保留的参数,则将所述输入数据合并至所述页面地址后并覆盖掉相同地址参数的值;所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索,所述跳转页面是基于所述目标页面地址跳转展示的分享页面,所述跳转页面用于分享给其他账户对象;
其中,在所述搜索组件为高级搜索组件的情况下,所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索包括:在所述跳转页面中,通过解析所述目标页面地址,得到针对所述高级搜索组件中多个元素组件分别对应的解析值,各所述解析值分别与所述输入数据同步;以及将各所述解析值分别填充至所述高级搜索组件中对应的元素组件中并进行自动搜索;所述多个元素组件与所述输入事件相匹配,所述输入事件包括输入搜索字符串、选择搜索对象和选择搜索时间。
2.根据权利要求1所述的方法,其特征在于,在所述组件展示样式包括组件展示数量的情况下,所述基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件之前,所述方法还包括:
在所述封装后组件中,基于各所述元素组件对应的组件展示宽度和获取的组件外层布局宽度,动态确定当前每行的组件展示数量;
将所述组件展示数量与各所述配置信息中包含的基本展示属性,作为所述封装后组件的展示属性。
3.根据权利要求1所述的方法,其特征在于,在所述搜索处理逻辑还包括默认值处理逻辑的情况下,所述基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件之前,所述方法还包括:
确定所述搜索数组中包含非空的默认属性的目标搜索项;
从所述搜索数组中提取所述目标搜索项的搜索项标识和对应的默认属性的值,组成键值对数组并存储;存储的所述键值对数组用于在渲染时加载以展示在所述搜索组件中;
相应的,所述方法还包括:
响应于针对所述搜索组件的重置任务事件,将存储的所述键值对数组中的默认属性的值合并至所述搜索组件中对应的搜索项的输入数据,并覆盖对应的输入数据,作为所述搜索组件中的当前展示数据;
将所述当前展示数据同步至所述搜索组件所在页面的页面地址,更新所述目标页面地址。
4.根据权利要求1所述的方法,其特征在于,所述搜索组件包括提交元素组件,所述搜索处理逻辑还包括回车事件处理逻辑;所述响应于针对所述搜索组件的输入事件,获取输入数据之后,所述方法还包括:
基于所述回车事件处理逻辑监测针对所述搜索组件的回车事件,获取所述回车事件的事件对象的属性值;
在确定所述事件对象的属性值为预设属性值,控制所述提交元素组件执行高级搜索操作或表格搜索操作。
5.根据权利要求1所述的方法,其特征在于,所述将所述输入数据封装至所述搜索组件所在页面的页面地址,得到目标页面地址包括:
获取所述搜索组件所在页面的页面地址,并将所述页面地址中参数转换为地址参数对象;
调用地址同步方法,基于所述地址参数对象和所述输入数据对应的输入参数对象,生成所述目标页面地址。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于针对所述搜索组件的搜索事件,将所述输入数据中的数值赋值给所述封装后组件中相应的搜索项,获得搜索条件参数;所述搜索条件参数用于确定初始搜索结果;
在检测到所述搜索数组中存在目标模板类型,基于所述目标模板类型对应的目标数据返回模板对所述初始搜索结果进行格式处理,得到目标搜索结果;
将所述目标搜索结果通过回调函数返回并展示。
7.根据权利要求6所述的方法,其特征在于,在所述目标搜索结果通过分页表格形式展示的情况下,所述方法还包括:
获取针对所述目标搜索结果的表格操作数据,所述表格操作数据包括当前页结果展示条数、当前结果展示页码、针对所述目标搜索结果的筛选参数值、针对所述目标搜索结果的参数排序顺序中一种或多种;
清除所述目标页面地址中已同步的表格数据,将所述表格操作数据同步至清除后的目标页面地址,得到同步后的页面地址;
相应的,所述方法还包括:
响应于在共享页面对所述同步后的页面地址的请求操作,从所述同步后的页面地址中解析出所述表格操作数据;
将所述表格操作数据传入表格搜索组件中,恢复展示所述目标搜索结果对应的操作后页面。
8.一种数据处理装置,其特征在于,所述装置包括:
第一获取模块,用于获取实现需求搜索功能的搜索数组,所述搜索数组包括多个搜索项对应的配置信息;所述配置信息包括所述搜索项的基本展示属性、和与时间筛选相关的时间配置对象,所述基本展示属性包括展示类型、是否收起、列间距和展示宽度中一种或多种,所述时间配置对象具有至少一个时间配置参数和对应的时间单位参数,所述时间配置参数用于表征筛选时间与当前搜索时间之间的时间间隔的数值,所述时间单位参数用于表征所述时间间隔所属的时间单位;
封装模块,用于获取各所述搜索项分别对应的元素组件,并将各所述搜索项对应的配置信息、对应的所述元素组件以及各所述元素组件所绑定的搜索处理逻辑进行封装,得到封装后组件;所述搜索处理逻辑包括样式处理逻辑;
渲染模块,用于基于所述封装后组件的展示属性,对所述封装后组件进行渲染,展示搜索组件;所述展示属性包括所述基本展示属性和基于所述样式处理逻辑确定的组件展示样式;所述搜索组件包括所述时间配置对象对应的时间筛选组件,所述时间筛选组件的数量与所述时间配置对象中的时间配置参数的数量相匹配;
第二获取模块,用于响应于针对所述搜索组件的输入事件,获取输入数据;
处理模块,用于将所述输入数据封装至所述搜索组件所在页面的页面地址,得到目标页面地址;在生成所述目标页面地址的过程中,若清除所述页面地址中无需保留的参数,则直接生成所述输入数据对应的输入参数对象,所述输入参数对象用于生成所述目标页面地址;若未清除所述页面地址中无需保留的参数,则将所述输入数据合并至所述页面地址后并覆盖掉相同地址参数的值;所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索,所述跳转页面是基于所述目标页面地址跳转展示的分享页面,所述跳转页面用于分享给其他账户对象;
其中,在所述搜索组件为高级搜索组件的情况下,所述目标页面地址用于在跳转页面中同步所述输入数据进行搜索包括:在所述跳转页面中,通过解析所述目标页面地址,得到针对所述高级搜索组件中多个元素组件分别对应的解析值,各所述解析值分别与所述输入数据同步;以及将各所述解析值分别填充至所述高级搜索组件中对应的元素组件中并进行自动搜索;所述多个元素组件与所述输入事件相匹配,所述输入事件包括输入搜索字符串、选择搜索对象和选择搜索时间。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-7任一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-7任一项所述的数据处理方法。
CN202311368217.3A 2023-10-23 2023-10-23 数据处理方法、装置、设备及存储介质 Active CN117112913B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311368217.3A CN117112913B (zh) 2023-10-23 2023-10-23 数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311368217.3A CN117112913B (zh) 2023-10-23 2023-10-23 数据处理方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN117112913A CN117112913A (zh) 2023-11-24
CN117112913B true CN117112913B (zh) 2024-02-13

Family

ID=88804217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311368217.3A Active CN117112913B (zh) 2023-10-23 2023-10-23 数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117112913B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104956361A (zh) * 2013-01-25 2015-09-30 电子湾有限公司 用于映射页面状态的系统和方法
CN108132956A (zh) * 2016-12-01 2018-06-08 北京搜狗科技发展有限公司 一种搜索方法、装置及电子设备
CN112799761A (zh) * 2021-01-27 2021-05-14 中国工商银行股份有限公司 搜索栏的生成方法、装置、电子设备及存储介质
CN114416056A (zh) * 2022-01-19 2022-04-29 平安国际融资租赁有限公司 页面生成方法、系统、计算机设备及可读存储介质
CN116028746A (zh) * 2023-02-16 2023-04-28 平安壹钱包电子商务有限公司 中后台管理系统的页面管理方法、装置、设备及存储介质
CN116569165A (zh) * 2021-11-29 2023-08-08 京东方科技集团股份有限公司 页面显示方法、装置、存储介质及电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104956361A (zh) * 2013-01-25 2015-09-30 电子湾有限公司 用于映射页面状态的系统和方法
CN108132956A (zh) * 2016-12-01 2018-06-08 北京搜狗科技发展有限公司 一种搜索方法、装置及电子设备
CN112799761A (zh) * 2021-01-27 2021-05-14 中国工商银行股份有限公司 搜索栏的生成方法、装置、电子设备及存储介质
CN116569165A (zh) * 2021-11-29 2023-08-08 京东方科技集团股份有限公司 页面显示方法、装置、存储介质及电子设备
CN114416056A (zh) * 2022-01-19 2022-04-29 平安国际融资租赁有限公司 页面生成方法、系统、计算机设备及可读存储介质
CN116028746A (zh) * 2023-02-16 2023-04-28 平安壹钱包电子商务有限公司 中后台管理系统的页面管理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN117112913A (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
CN108304498B (zh) 网页数据采集方法、装置、计算机设备和存储介质
US20070143306A1 (en) Integrated website management system and management method thereof
CN109376291B (zh) 一种基于网络爬虫的网站指纹信息扫描的方法及装置
US10452730B2 (en) Methods for analyzing web sites using web services and devices thereof
CN113703785B (zh) 基于组件的平台部署方法、装置、设备及存储介质
CN113094674B (zh) 页面展示方法、装置、电子设备及存储介质
CN110888709A (zh) 监控屏的智能操作方法、装置、计算机设备和存储介质
CN109240700B (zh) 关键代码定位方法与系统
CN109814863A (zh) 一种请求返回数据的处理方法、装置、计算机设备及计算机存储介质
CN107526748B (zh) 一种识别用户点击行为的方法和设备
CN113704344A (zh) 基于表单模板的数据备案方法、装置、设备及存储介质
CN112445960A (zh) 应用程序框架内关联搜索方法及电子设备
CN112527459B (zh) 一种基于Kubernetes集群的日志分析方法及装置
CN117112913B (zh) 数据处理方法、装置、设备及存储介质
CN112612990A (zh) 网页解析方法、系统及计算机可读存储介质
CN113010149A (zh) 应用加载方法、装置、用户终端和服务器
CN109062784B (zh) 接口参数约束代码入口定位方法与系统
CN114461960B (zh) 页面生成方法、页面展示方法及装置
EP3370170A1 (en) Feature term classification method, information processing apparatus, and feature term classification program
CN113515715B (zh) 埋点事件编码的生成方法、处理方法及相关设备
CN112100126B (zh) 一种基于Excel文件的图片存储和内容展示方法及装置
CN115187871A (zh) 提供卫星遥感影像信息的方法、装置及电子设备
CN111158684B (zh) 系统创建方法、装置、电子设备及可读存储介质
CN112559278B (zh) 操作数据的获取方法和装置
CN113641927A (zh) 一种分页穿梭框实现方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant