CN107704239A - 配置生成方法、装置及电子设备 - Google Patents

配置生成方法、装置及电子设备 Download PDF

Info

Publication number
CN107704239A
CN107704239A CN201710930366.2A CN201710930366A CN107704239A CN 107704239 A CN107704239 A CN 107704239A CN 201710930366 A CN201710930366 A CN 201710930366A CN 107704239 A CN107704239 A CN 107704239A
Authority
CN
China
Prior art keywords
configuration
template
echarts
attribute information
user
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.)
Granted
Application number
CN201710930366.2A
Other languages
English (en)
Other versions
CN107704239B (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.)
Wuhan Qianxing Science And Technology Co ltd
Original Assignee
Wuhan Douyu Network Technology 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201710930366.2A priority Critical patent/CN107704239B/zh
Publication of CN107704239A publication Critical patent/CN107704239A/zh
Application granted granted Critical
Publication of CN107704239B publication Critical patent/CN107704239B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供了一种配置生成方法、装置及电子设备,所述方法包括:将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象;创建所述类模板的实例,根据该实例中的与各配置对象生成各配置对象对应的属性信息的修改面板;根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义;响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息;将所述配置信息转换为字符串,将转换后的字符串进行保存。本发明提供的配置生成方案,可通过对配置对象的封装及定义,提供统一和集中的方式来实现修改ECharts配置的功能,实现ECharts配置的统一化、可复用化,进一步简化开发流程。

Description

配置生成方法、装置及电子设备
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种配置生成方法、装置及电子设备。
背景技术
ECharts是目前使用比较普遍的开源图表类库,目前开发过程中,由于每一个使用ECharts的页面基本上要重新生成ECharts的配置,并且逐个属性地去配置,造成了大量的重复工作和代码的冗余,给项目的开发和维护工作带来了极大的不便,更进一步地降低了开发维护的效率和页面运行的效率。
发明内容
有鉴于此,本发明的目的在于,提供一种配置生成方法、装置及电子设备以解决上述问题。
本发明的较佳实施例提供一种配置生成方法,所述方法包括:
将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象;
创建所述类模板的实例,根据该实例中的与各配置对象生成各配置对象对应的属性信息的修改面板;
根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义;
响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息;
将所述配置信息转换为字符串,将转换后的字符串进行保存。
进一步地,所述创建所述类模板的实例,根据该实例中的各配置对象生成与各配置对象对应的属性信息的修改面板的步骤,包括:
创建所述类模板的实例,对该实例中的各配置对象进行遍历,生成ECharts的网格***;
对所述网格***进行渲染,生成与各配置对象对应的属性信息的修改面板。
进一步地,所述根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义的步骤,包括:
对该修改面板中选定的需要修改的属性信息的模板对象进行修改定义并映射成对应的React组件;
将映射后的React组件添加至页面中。
进一步地,所述将ECharts中与各属性信息相对应的配置对象封装为类模板的步骤,包括:
提取出ECharts中用于进行配置的属性信息,根据所述属性信息获得对应的配置对象;
将所述配置对象封装为类模板,并根据ECharts的API和业务划分添加与各配置对象对应的模板对象至所述类模板。
进一步地,所述响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息的步骤,包括:
响应用户操作,根据用户操作创建类模板的实例对象;
通过调用所述类模板中的与用户操作对应的创建函数获得与用户操作对应的模板对象;
将获得的模板对象***至所述类模板的实例对象的根对象中,以完成与用户操作对应的配置信息的创建。
进一步地,所述将所述配置信息转换为字符串,将转换后的字符串传递进行保存的步骤,包括:
通过JSON.stringify函数将所述配置信息转换为JSON字符串,并通过提供的接口将转换后的JSON字符串保存至数据库。
本发明的另一较佳实施例提供一种配置生成装置,所述装置包括:
封装模块,用于将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象;
生成模块,用于创建所述类模板的实例,根据该实例中的各配置对象生成与各配置对象对应的属性信息的修改面板;
修改定义模块,用于根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义;
创建模块,用于响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息;
转换模块,用于将所述配置信息转换为字符串,将转换后的字符串进行保存。
进一步地,所述生成模块包括网格***生成单元以及渲染单元;
网格***生成单元,用于创建所述类模板的实例,对该实例中的各配置对象进行遍历,生成ECharts的网格***;
渲染单元,用于对所述网格***进行渲染,生成各配置对象对应的属性信息的修改面板。
本发明的另一较佳实施例还提供一种电子设备,包括:
存储器;
处理器;及
配置生成装置,所述配置生成装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模块。
本发明的另一较佳实施例还提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的配置生成方法。
本发明实施例提供一种配置生成方法、装置及电子设备,通过将ECharts中的与各属性信息对应的配置对象封装为类模板,根据该类模板的实例中的配置对象生成属性信息对应的修改面板。根据该修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义。如此提供一种统一和集中的方式来实现修改ECharts配置的功能。在用户进行修改操作时,根据用户的修改操作创建相应的配置信息,将配置信息进行序列化后传递至数据库,以此来保存配置信息。本发明提供的配置生成方案,可通过对配置对象的封装及定义,来实现ECharts配置的统一化、可复用化,进一步简化开发流程。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种电子设备的示意性结构框图。
图2为本发明实施例提供的一种配置生成方法的流程图。
图3为图2中步骤S101的子步骤的流程图。
图4为图2中步骤S103的子步骤的流程图。
图5为图2中步骤S105的子步骤的流程图。
图6为图2中步骤S107的子步骤的流程图。
图7为本发明实施例提供的配置生成装置的功能模块框图。
图8为本发明实施例提供的封装模块的功能模块框图。
图9为本发明实施例提供的生成模块的功能模块框图。
图10为本发明实施例提供的修改定义模块的功能模块框图。
图11为本发明实施例提供的创建模块的功能模块框图。
图标:100-电子设备;110-配置生成装置;111-封装模块;1111-提取单元;1112-第一添加单元;112-生成模块;1121-网格***生成单元;1122-渲染单元;113-修改定义模块;1131-映射单元;1132-第二添加单元;114-创建模块;1141-创建单元;1142-调用单元;1143-***单元;115-转换模块;120-处理器;130-存储器。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,除非另有明确的规定和限定,术语“安装”、“设置”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
请参阅图1,为本发明实施例提供的一种电子设备100的示意性结构框图。在本实施例中,所述电子设备100包括配置生成装置110、处理器120及存储器130。其中,所述存储器130与所述处理器120之间直接或间接的电性连接,以实现数据的传输或交互。所述配置生成装置110包括至少一个可以软件或固件的形式存储于所述存储器130中或固化在所述电子设备100的操作***中的软件功能模块。所述处理器120用于执行所述存储器130中存储的可执行模块,例如所述配置生成装置110包括的软件功能模块或计算机程序。
请参阅图2,是本发明实施例提供的一种应用于上述电子设备100的配置生成方法的流程图。所应说明的是,本发明提供的方法不以图2及以下所述的具体顺序为限制。下面将对图2中示出的各步骤进行详细说明。
步骤S101,将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象。
请参阅图3,在本实施例中,步骤S101可以包括步骤S1011以及步骤S1013两个子步骤。
步骤S1011,提取出ECharts中用于进行配置的属性信息,根据所述属性信息获得对应的配置对象。
步骤S1013,将所述配置对象封装为类模板,并根据ECharts的API和业务划分添加与各配置对象对应的模板对象至所述类模板。
可选地,在本实施例中,根据ECharts文档所提供的相关信息提取出ECharts中可以用于进行配置的属性信息。相对应地,各属性信息有其相对应的配置对象,将配置对象封装为ES6类的DataTemplate类模板。并在该类模板中根据ECharts的API(ApplicationProgram Interface,应用程序接口)和业务划分,添加与配置对象对应的模板对象,例如rowTpl模板对象、panelTpl模板对象,至该类模板中。其中,在panelTpl模板对象中,主要包含了ECharts对应的配置信息及相关的默认值。如此,则该类模板中包含了ECharts中各配置对象对应的模板对象。
在本实施例中,将配置对象集中封装为ES6的类,方便了在后续的开发过程中引进并使用。并且,根据业务划分将ECharts的组件进行内部划分,方便后续按需处理。如此,在后续需要对图表进行分组划分(如多行多列的方式显示图表)的场景下,在初始化rowTpl之后,即可以利用类模板的实例导出的对应函数生成局部模板,例如panelTpl。通过在rowTpl对象中***多个panelTpl就实现了一行多个ECharts图表的功能了。类似地,通过在DataTemplate类的实例中***多个rowTpl模板就可以实现多行展示ECharts。
步骤S103,创建所述类模板的实例,根据该实例中的各配置对象生成各配置对象对应的属性信息的修改面板。
请参阅图4,在本实施例中,步骤S103包括步骤S1031和步骤S1033两个子步骤。
步骤S1031,创建所述类模板的实例,对该实例中的各配置对象进行遍历,生成ECharts的网格***。
步骤S1033,对所述网格***进行渲染,生成各配置对象对应的属性信息的修改面板。
在本实施例中,在创建了DataTemplate类模板的实例之后,需要将该实例对象渲染成对应的布局。应当理解,该布局是通过row和panel来实现的,其中row和panel对应网格布局的行和列。可选地,对该实例中的各配置对象进行遍历,例如循环遍历row和panel,以生成整个图表的网格***。对该网格***进行渲染,生成各配置对象对应的属性信息的修改面板。
在本实施例中,利用网格***的设计可使设计更加灵活,以满足更多的业务场景。由于配置对象中可以包括多个row,并且row中也可以有多个panel,同时这样的数据结构设计更加方便管理和维护,一方面让数据的***更加简单有效,同时也让数据的遍历和获取也更快捷。
步骤S105,根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义。
请参阅图5,在本实施例中,步骤S105包括步骤S1051和步骤S1053两个子步骤。
步骤S1051,对该修改面板中选定的需要修改的属性信息的模板对象进行修改定义并映射成对应的React组件。
步骤S1053,将映射后的React组件添加至页面中。
在本实施例中,在根据类模板DataTemplate的实例对象渲染了整个编辑器的基本布局之后,需要让编辑器组件提供相应的功能以让用户能够修改和自定义配置对象的一些属性。可选地,对该修改面板中选定的需要修改的属性信息的模板对象进行修改定义,并映射成对应的React组件,例如,可将一些需要用户数据的属性信息映射成<AutoComplete/>组件,将一些需要选择的属性信息映射成<Select/>组件。将映射后的React组件添加至页面中,这样就实现了提供统一和集中的方式修改ECharts配置的功能。如此,可分别让用户自行填写已经定义了的选择项,这样编辑器就完成了属性修改功能的实现。
在本实施例中,通过上述设置以遵循最小权限原则,即只将需要修改的属性信息暴露给用户。最后通过合适的组件提供给用户修改,这样可增强整个配置编辑器的易用性,以提高用户体验。
步骤S107,响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息。
请参阅图6,在本实施例中,步骤S107包括步骤S1071、步骤S1073和步骤S1075三个子步骤。
步骤S1071,响应用户操作,根据用户操作创建类模板的实例对象。
步骤S1073,通过调用所述类模板中的与用户操作对应的创建函数获得与用户操作对应的模板对象。
步骤S1075,将获得的模板对象***至所述类模板的实例对象的根对象中,以完成与用户操作对应的配置信息。
在本实施例中,解决方案提供了多种编辑功能,例如添加行、添加ECharts面板、添加ECharts中的配置对象等。可选地,当用户进行相应点击操作时,例如点击添加行之后,编辑器首先会创建一个DataTemplate类模板的实例对象,然后通过调用DataTemplate类模板的中对应的函数来获得相应的模板对象,例如通过调用getRowTpl(),获得一个默认的包含行信息的数据模板对象,然后将这个模板对象***到类模板DataTemplate的实例对象的根对象中,如此就完成了行的创建。
类似地,当用户点击添加ECharts之后,会通过调用DataTemplate类的getPanelTpl()函数获得面板配置项的模板对象,最后***到DataTemplate类模板的实例对象的根对象中完成面板的创建。
可选地,在本实施例中,DataTemplate类模板导出的函数包括但不限于以下几种:
getConfigTpl():返回整个根配置信息的模板对象。
getRowTpl():返回一行配置信息的模板对象。
getPanelTpl():返回一个包含ECharts信息的模板对象。
getTargetTpl():返回一个包含有ECharts各项配置信息的模板对象。
在本实施例中,利用统一的类模板所包含的不同的配置信息的模板对象便于集中引入和使用这个类模板。且将配置信息的模板对象按照逻辑和业务进行拆分可提高这个类的普遍性和通用性,即按照不同的业务需求分别生成不同的模板对象,这样可以满足不同的业务需求。
可选地,在本实施例中,将ECharts的配置信息存储在React的state(用于维护React组件内部状态的对象)中,就可以在用户编辑各项配置信息的时候动态渲染出整个修改后的配置信息,如此可实现所见即所得的编辑功能。
由于React的功能特性,任何对State的修改更新都将使页面更新重绘,因此将配置信息存储在React的State中,一旦ECharts图表的配置被更改了,页面将被更新,因此对应的图表配置对象将被重新生成,因此达到了所见即所得的目的。
步骤S109,将所述配置信息转换为字符串,将转换后的字符串进行保存。
在本实施例中,步骤S109具体包括以下步骤:
通过JSON.stringify函数将所述配置信息转换为JSON字符串,并通过提供的接口将转换后的JSON字符串保存至数据库。
可选地,在本实施例中,所述电子设备100可与后端服务器建立通信,在用户完成了ECharts图表配置信息的创建及修改之后,编辑器组件将会通过后端服务器提供的接口利用JSON.stringify函数将此配置信息序列化成JSON字符串之后传递给后端服务器的数据库。如此实现保存配置信息的目的,同时,在后序的ECharts使用过程中,只需要对保存的信息进行获取就可以实现整个图表业务的渲染了。可选地,在用户完成ECharts图表配置信息的创建及修改之后也可根据用户的操作来选择是否对修改进行保存。若用户选择保存,则执行配置信息的转换及传递流程。若用户选择不进行保存,则对此次的修改操作进行销毁。
请参阅图7,为本发明实施例提供的一种配置生成装置110的功能模块框图。所述配置生成装置110包括封装模块111、生成模块112、修改定义模块113、创建模块114以及转换模块115。
所述封装模块111用于将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象。具体地,该封装模块111可用于执行图2中所示的步骤S101,具体的操作方法可参考步骤S101的详细描述。
可选地,请参阅图8,在本实施例中,所述封装模块111包括提取单元1111以及第一添加单元1112。
所述提取单元1111用于提取出ECharts中用于进行配置的属性信息,根据所述属性信息获得对应的配置对象。具体地,该提取单元1111可用于执行图3中所示的步骤S1011,具体的操作方法可参考步骤S1011的详细描述。
所述第一添加单元1112用于将所述配置对象封装为类模板,并根据ECharts的API和业务划分添加与各配置对象对应的模板对象至所述类模板。具体地,该第一添加单元1112可用于执行图3中所示的步骤S1013,具体的操作方法可参考步骤S1013的详细描述。
所述生成模块112用于创建所述类模板的实例,根据该实例中的各配置对象生成各配置对象对应的属性信息的修改面板。具体地,该生成模块112可用于执行图2中所示的步骤S103,具体的操作方法可参考步骤S103的详细描述。
可选地,请参阅图9,在本实施例中,所述生成模块112包括网格***生成单元1121以及渲染单元1122。
所述网格***生成单元1121用于创建所述类模板的实例,对该实例中的各配置对象进行遍历,生成ECharts的网格***。具体地,该网格***生成单元1121可用于执行图4中所示的步骤S1031,具体的操作方法可参考步骤S1031的详细描述。
所述渲染单元1122用于对所述网格***进行渲染,生成各配置对象对应的属性信息的修改面板。具体地,该渲染单元1122可用于执行图4中所示的步骤S1033,具体的操作方法可参考步骤S1033的详细描述。
所述修改定义模块113用于根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义。具体地,该修改定义模块113可用于执行图2中所示的步骤S105,具体的操作方法可参考步骤S105的详细描述。
可选地,请参阅图10,在本实施例中,所述修改定义模块113包括映射单元1131以及第二添加单元1132。
所述映射单元1131用于对该修改面板中选定的需要修改的属性信息的模板对象进行修改定义并映射成对应的React组件。具体地,该映射单元1131可用于执行图5中所示的步骤S1051,具体的操作方法可参考步骤S1051的详细描述。
所述第二添加单元1132用于将映射后的React组件添加至页面中。具体地,该第二添加单元1132可用于执行图5中所示的步骤S1053,具体的操作方法可参考步骤S1053的详细描述。
所述创建模块114用于响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息。具体地,该创建模块114可用于执行图2中所示的步骤S107,具体的操作方法可参考步骤S107的详细描述。
可选地,请参阅图11,在本实施例中,所述创建模块114包括创建单元1141、调用单元1142以及***单元1143。
所述创建单元1141用于响应用户操作,根据用户操作创建类模板的实例对象。具体地,该创建单元1141可用于执行图6中所示的步骤S1071,具体的操作方法可参考步骤S1071的详细描述。
所述调用单元1142用于通过调用所述类模板中的与用户操作对应的创建函数获得与用户操作对应的配置对应的模板对象。具体地,该调用单元1142可用于执行图6中所示的步骤S1073,具体的操作方法可参考步骤S1073的详细描述。
所述***单元1143用于将获得的模板对象***至所述类模板的实例对象的根对象中,以完成与用户操作对应的配置信息。具体地,该***单元1143可用于执行图6中所示的步骤S1075,具体的操作方法可参考步骤S1075的详细描述。
所述转换模块115用于将所述配置信息转换为字符串,将转换后的字符串进行保存。具体地,该转换模块115可用于执行图2中所示的步骤S109,具体的操作方法可参考步骤S109的详细描述。
此外,本发明另一较佳实施例还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器120执行时实现上述的配置生成方法的步骤。
综上所述,本发明提供一种配置生成方法、装置及电子设备,通过将ECharts中的与各属性信息对应的配置对象封装为类模板,根据该类模板的实例中的配置对象生成属性信息对应的修改面板。根据该修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义。如此提供一种统一和集中的方式来实现修改ECharts配置的功能。在用户进行修改操作时,根据用户的修改操作创建相应的配置信息,将配置信息进行序列化后传递至后端服务器的数据库,以此来保存配置信息。本发明提供的配置生成方案,可通过对配置对象的封装及定义,来实现ECharts配置的统一化、可复用化,进一步简化开发流程。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种配置生成方法,其特征在于,所述方法包括:
将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象;
创建所述类模板的实例,根据该实例中的与各配置对象生成各配置对象对应的属性信息的修改面板;
根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义;
响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息;
将所述配置信息转换为字符串,将转换后的字符串进行保存。
2.根据权利要求1所述的配置生成方法,其特征在于,所述创建所述类模板的实例,根据该实例中的各配置对象生成与各配置对象对应的属性信息的修改面板的步骤,包括:
创建所述类模板的实例,对该实例中的各配置对象进行遍历,生成ECharts的网格***;
对所述网格***进行渲染,生成与各配置对象对应的属性信息的修改面板。
3.根据权利要求1所述的配置生成方法,其特征在于,所述根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义的步骤,包括:
对该修改面板中选定的需要修改的属性信息的模板对象进行修改定义并映射成对应的React组件;
将映射后的React组件添加至页面中。
4.根据权利要求1所述的配置生成方法,其特征在于,所述将ECharts中与各属性信息相对应的配置对象封装为类模板的步骤,包括:
提取出ECharts中用于进行配置的属性信息,根据所述属性信息获得对应的配置对象;
将所述配置对象封装为类模板,并根据ECharts的API和业务划分添加与各配置对象对应的模板对象至所述类模板。
5.根据权利要求1所述的配置生成方法,其特征在于,所述响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息的步骤,包括:
响应用户操作,根据用户操作创建类模板的实例对象;
通过调用所述类模板中的与用户操作对应的创建函数获得与用户操作对应的模板对象;
将获得的模板对象***至所述类模板的实例对象的根对象中,以完成与用户操作对应的配置信息的创建。
6.根据权利要求1所述的配置生成方法,其特征在于,所述将所述配置信息转换为字符串,将转换后的字符串进行保存的步骤,包括:
通过JSON.stringify函数将所述配置信息转换为JSON字符串,并通过提供的接口将转换后的JSON字符串保存至数据库。
7.一种配置生成装置,其特征在于,所述装置包括:
封装模块,用于将ECharts中与各属性信息相对应的配置对象封装为类模板,所述类模板包含ECharts中各配置对象对应的模板对象;
生成模块,用于创建所述类模板的实例,根据该实例中的各配置对象生成与各配置对象对应的属性信息的修改面板;
修改定义模块,用于根据所述修改面板对ECharts中的与各属性信息对应的模板对象进行修改定义;
创建模块,用于响应用户操作,根据修改定义后的各模板对象创建与用户操作对应的配置信息;
转换模块,用于将所述配置信息转换为字符串,将转换后的字符串进行保存。
8.根据权利要求7所述的配置生成装置,其特征在于,所述生成模块包括网格***生成单元以及渲染单元;
网格***生成单元,用于创建所述类模板的实例,对该实例中的各配置对象进行遍历,生成ECharts的网格***;
渲染单元,用于对所述网格***进行渲染,生成各配置对象对应的属性信息的修改面板。
9.一种电子设备,其特征在于,包括:
存储器;
处理器;及
配置生成装置,所述配置生成装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模块。
10.一种计算机存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任意一项所述的配置生成方法。
CN201710930366.2A 2017-10-09 2017-10-09 配置生成方法、装置及电子设备 Active CN107704239B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710930366.2A CN107704239B (zh) 2017-10-09 2017-10-09 配置生成方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710930366.2A CN107704239B (zh) 2017-10-09 2017-10-09 配置生成方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN107704239A true CN107704239A (zh) 2018-02-16
CN107704239B CN107704239B (zh) 2020-10-16

Family

ID=61184791

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710930366.2A Active CN107704239B (zh) 2017-10-09 2017-10-09 配置生成方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN107704239B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108614886A (zh) * 2018-05-03 2018-10-02 北京搜狐互联网信息服务有限公司 一种网站主题的生成方法及装置
CN109165049A (zh) * 2018-07-03 2019-01-08 北京辰森世纪科技股份有限公司 组件数据处理方法及装置
CN110956025A (zh) * 2018-09-27 2020-04-03 长沙博为软件技术股份有限公司 一种基于流程模板复用的方法
CN110989891A (zh) * 2019-12-23 2020-04-10 深圳市金蝶天燕云计算股份有限公司 一种图表编辑器中组件部署方法、图表编辑器及相关设备
CN111124557A (zh) * 2018-10-31 2020-05-08 北京国双科技有限公司 图与表的交互方法及装置
CN111722844A (zh) * 2020-05-29 2020-09-29 北京宝兰德软件股份有限公司 基于Web的动态富文本组件的设计方法及装置
CN112416304A (zh) * 2020-11-23 2021-02-26 西安西热电站信息技术有限公司 一种将echarts扩展为html标准组件的方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1860551A1 (de) * 2006-05-22 2007-11-28 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Erfassung einer Modifikation eines Softwarestandes
CN101217630A (zh) * 2008-01-14 2008-07-09 中兴通讯股份有限公司 图形化生成网络电视电子节目指南***模板的方法
US20150089515A1 (en) * 2013-09-21 2015-03-26 Vayavya Labs Private. Limited System and method for generating a device driver using an archive of template code
CN105183466A (zh) * 2015-08-27 2015-12-23 国云科技股份有限公司 一种简化echarts调用的封装方法
CN105786464A (zh) * 2014-12-23 2016-07-20 远光软件股份有限公司 基于模板库的界面设计方法及装置
CN105808237A (zh) * 2016-02-25 2016-07-27 北京京东尚科信息技术有限公司 页面渲染方法和页面渲染***
CN106250156A (zh) * 2016-08-01 2016-12-21 腾讯科技(深圳)有限公司 组件构建方法和装置、组件调用方法和装置
CN106302008A (zh) * 2016-08-05 2017-01-04 腾讯科技(深圳)有限公司 数据更新方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1860551A1 (de) * 2006-05-22 2007-11-28 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Erfassung einer Modifikation eines Softwarestandes
CN101217630A (zh) * 2008-01-14 2008-07-09 中兴通讯股份有限公司 图形化生成网络电视电子节目指南***模板的方法
US20150089515A1 (en) * 2013-09-21 2015-03-26 Vayavya Labs Private. Limited System and method for generating a device driver using an archive of template code
CN105786464A (zh) * 2014-12-23 2016-07-20 远光软件股份有限公司 基于模板库的界面设计方法及装置
CN105183466A (zh) * 2015-08-27 2015-12-23 国云科技股份有限公司 一种简化echarts调用的封装方法
CN105808237A (zh) * 2016-02-25 2016-07-27 北京京东尚科信息技术有限公司 页面渲染方法和页面渲染***
CN106250156A (zh) * 2016-08-01 2016-12-21 腾讯科技(深圳)有限公司 组件构建方法和装置、组件调用方法和装置
CN106302008A (zh) * 2016-08-05 2017-01-04 腾讯科技(深圳)有限公司 数据更新方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
嗨_等风来: "react中使用Echarts图表", 《简书》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108614886A (zh) * 2018-05-03 2018-10-02 北京搜狐互联网信息服务有限公司 一种网站主题的生成方法及装置
CN108614886B (zh) * 2018-05-03 2021-10-15 北京云站科技有限公司 一种网站主题的生成方法及装置
CN109165049A (zh) * 2018-07-03 2019-01-08 北京辰森世纪科技股份有限公司 组件数据处理方法及装置
CN110956025A (zh) * 2018-09-27 2020-04-03 长沙博为软件技术股份有限公司 一种基于流程模板复用的方法
CN111124557A (zh) * 2018-10-31 2020-05-08 北京国双科技有限公司 图与表的交互方法及装置
CN110989891A (zh) * 2019-12-23 2020-04-10 深圳市金蝶天燕云计算股份有限公司 一种图表编辑器中组件部署方法、图表编辑器及相关设备
CN110989891B (zh) * 2019-12-23 2021-12-14 深圳市金蝶天燕云计算股份有限公司 一种图表编辑器中组件部署方法、图表编辑器及相关设备
CN111722844A (zh) * 2020-05-29 2020-09-29 北京宝兰德软件股份有限公司 基于Web的动态富文本组件的设计方法及装置
CN111722844B (zh) * 2020-05-29 2024-05-03 北京宝兰德软件股份有限公司 基于Web的动态富文本组件的设计方法及装置
CN112416304A (zh) * 2020-11-23 2021-02-26 西安西热电站信息技术有限公司 一种将echarts扩展为html标准组件的方法
CN112416304B (zh) * 2020-11-23 2022-11-25 西安西热电站信息技术有限公司 一种将echarts扩展为html标准组件的方法

Also Published As

Publication number Publication date
CN107704239B (zh) 2020-10-16

Similar Documents

Publication Publication Date Title
CN107704239A (zh) 配置生成方法、装置及电子设备
CN111290778B (zh) Ai模型的包装方法、平台及电子设备
CN104298496B (zh) 数据分析型软件开发框架***
CN109829375A (zh) 一种机器学习方法、装置、设备及***
CN111967568A (zh) 深度学习模型的适配方法、装置及电子设备
CN104484163B (zh) 一种基于统一建模环境的异构模型转换方法
CN104572577B (zh) 数学公式处理方法及装置
CN111241349A (zh) 一种基于图形转换的接线图数据展示方法及***
CN113741965A (zh) 一种流程图的编排方法、装置、设备及存储介质
CN107479866A (zh) 基于重构技术实现开放终端应用数据与功能的方法
CN106951254A (zh) 支付***中相似业务功能模块复用的方法及装置
CN114996619A (zh) 一种页面显示的方法、装置、计算机设备及存储介质
CN114707474A (zh) 报表生成方法、装置、电子设备及计算机可读存储介质
CN104081347A (zh) 运算次序的图形表示
CN114647409A (zh) 大屏可视化应用创建平台、方法、计算设备和存储介质
US20220012434A1 (en) Contextual diagram-text alignment through machine learning
CN117193745A (zh) 一种组件组装和大语言模型结合的应用开发方法及装置
CN106874000A (zh) 基于工程造价计算机描述语言bcl的数据分析装置及生成方法
CN115346669A (zh) 一种基于低代码编程的医学人工智能推理方法及***
US9141342B2 (en) Programmatic conversion of support documentation into executable programs
EP3096223A1 (en) Apparatus and method for generating and outputting an interactive image object
CN115248881A (zh) 网页输入信息的渲染方法、装置、电子设备及存储介质
CN103810312B (zh) 用于人机接口动画图形元素的计算机辅助设计的方法及装置
CN104217018A (zh) 处理运营数据的方法和装置
CN109410939A (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
TR01 Transfer of patent right

Effective date of registration: 20231109

Address after: No. 10, 11th Floor, Building A-2, Zone II (Phase 6), National Geospatial Information Industry Base, Wuda Science and Technology Park, Donghu Development Zone, Wuhan City, Hubei Province, 430000

Patentee after: Wuhan Qianxing Science and Technology Co.,Ltd.

Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building

Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right