【技术实现步骤摘要】
本申请涉及网页开发
,特别涉及一种网页组件的生成方法及装置。
技术介绍
网页组件被誉为网页开发的未来,由于解决了网页表现层在开发过程中难以快速开发和实现复杂交互界面这两大难题,使得开发者能够开发出可在网站上循环利用的功能界面,越来越受到业内重视。现有技术中,一种编译生成网页组件的方法包括如下步骤:首先,直接通过JS的语法来写HTML的代码内容,使得HTML代码和JS代码就可以共存在一个兼容的JSX文件;最后,对该兼容的JSX文件做编译转换,将该兼容的JSX文件中扩展的HTML标签转换为普通的JS对象,从而得到所需要的网页组件。然而,在实现本申请过程中,上述现有技术中至少存在如下问题:现有的网页组件缺少CSS选择器部分,由于缺少了该代码部分,在需调整网页组件的页面布局、文字排版等对网页组件时,只能通过用JS的语法重新写入HTML的代码内容,该编码过程费时费力,造成网页组件生成效率低下。
技术实现思路
本申请实施例的目的是提供一种网页组件的生成方法及装置,能够高效生成网页组件。为解决上述技术问题,本申请实施例提供一种网页组件的生成方法,其包括:获取网页组件的JSX代码;获取所述JSX代码中HTML标签;判断获取的HTML标签中是否具有与待用CSS选择器匹配的HTML标签;若是,根据匹配的待用CSS选择器的样式内容调整所对应的HTML标签的Style属性,得到网页组件。为解决上述技术问题,本申请实施例提供一种网页组件的生成装置,其包括:代码获取模块,获取网页组件的JSX代码;标签获取模块,获取JSX代码中HTML标签;匹配判断模块,判断获取的HTML标签中是 ...
【技术保护点】
一种网页组件的生成方法,其特征在于,包括:获取网页组件的JSX代码;获取所述JSX代码中HTML标签;判断所述获取的HTML标签中是否具有与待用CSS选择器匹配的HTML标签;若是,根据所述匹配的待用CSS选择器的样式内容调整所对应的HTML标签的Style属性,得到网页组件。
【技术特征摘要】
1.一种网页组件的生成方法,其特征在于,包括:获取网页组件的JSX代码;获取所述JSX代码中HTML标签;判断所述获取的HTML标签中是否具有与待用CSS选择器匹配的HTML标签;若是,根据所述匹配的待用CSS选择器的样式内容调整所对应的HTML标签的Style属性,得到网页组件。2.如权利要求1所述的生成方法,其特征在于,判断所述获取的HTML标签中是否具有与待用CSS选择器匹配的HTML标签,具体包括:获取所述HTML标签的规则内容;判断是否有相同规则内容的待用CSS选择器;若是,判定所述获取的HTML标签中具有与待用CSS选择器匹配的HTML标签。3.如权利要求1所述的生成方法,其特征在于,判获取所述JSX代码中HTML标签之后,判断所述获取的HTML标签中是否具有与待用CSS选择器匹配的HTML标签之前,所述生成方法还包括:将所述JSX代码转换至基于HTML协议的协议代码;将待用CSS选择器通过所述协议代码的Link标签引入或Style标签写入。4.如权利要求3所述的生成方法,其特征在于,在生成网页组件之后,所述生成方法还包括:删除所述协议代码的Link标签引入或Style标签写入。5.如权利要求1所述的生成方法,其特征在于,根据所述匹配的待用CSS选择器的样式内容调整所对应的HTML标签的Style属性,具体包括下述至少一种:在所述待用CSS选择器为非伪类选择器时,将所述待用CSS选择器的样
\t式内容写入至所对应的HTML标签的Style属性;在所述待用CSS选择器为Hover伪类选择器时,对所述CSS选择器做移入和移出事件监听,在发生移入事件时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签的Style属性;在发生移出事件时,将所述待用CSS选择器的样式内容从所对应的HTML标签的Style属性中移出;在所述待用CSS选择器为Active伪类选择器时,对所述待用CSS选择器做按下和弹起事件监听,在发生按下事件时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签的Style属性;在发生弹起事件时,将所述待用CSS选择器的样式内容从所对应的HTML标签的Style属性中移出;在所述待用CSS选择器为Focus伪类选择器时,对所述待用CSS选择器做聚焦和失焦事件监听,在发生聚焦事件时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签的Style属性;在发生失焦事件时,将所述待用CSS选择器的样式内容从所对应的HTML标签的Style属性中移出;在所述待用CSS选择器为Link伪类选择器时,跳过对该待用CSS选择器的样式内容写入至所对应的HTML标签的处理;在所述待用CSS选择器为Target伪类选择器时,判断Location.Hash是否与元素HREF属性相等,若是,将所述待用CSS选择器的样式内容写入至所对应的HTML标签的Style属性;在所述待用CSS选择器为Enable伪类选择器时,对所述待用CSS选择器做开启和禁用事件监听,在发生开启事件时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签的Style属性;在发生禁用事件时,将所述待用CSS选择器的样式内容从所对应的HTML标签的Style属性中移出;在所述待用CSS选择器为Disable伪类选择器时,对所述待用CSS选择器做开启和禁用事件监听,在发生开启事件时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签的Style属性;在发生禁用事件时,将所述待用CSS选择器的样式内容从所对应的HTML标签的Style属性中移出;在所述待用CSS选择器为FirstChild伪类选择器时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签中第一个HTML标签的Style属性;在所述待用CSS选择器为LastChild伪类选择器时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签中最后一个HTML标签的Style属性;在所述待用CSS选择器为Before伪类选择器时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签之前一个位置;在所述待用CSS选择器为After伪类选择器时,将所述待用CSS选择器的样式内容写入至所对应的HTML标签之后一个位置。6.如权利要求1所述的生成方法,其特征在于,所述生成方法还包括:对所述HTML标签中未与待用CSS选择器匹配的HTML标签做标记;对未与所述HTML标签做匹配的待用CSS选择器做标记;运行所述网页组件,生成结果HTML代码;获取所述结果HTML代码中被标记过的HTML标签;获取与被标记过的HTML标签相匹配的、被标记过的CSS选择器;根据所述匹配的、被标记过的CSS选择器的样式内容调整所对应的、被标记的HTML标签的Style属性,更新所述网页组件。7.如权利要求1所述的生成方法,其特征在于,获取所述JSX代码中HTML标签之后,所述生成方法还包括:判断HTML标签中是否有双向HTML标签;若是,对双向HTML标签做预设输入事件监听;判断所述双向HTML标签所对应的视图层是否发生预设输入事件;若是,获取所述双向HTML标签中视图层的更新数据,将所述更新数据...
【专利技术属性】
技术研发人员:郝立鑫,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。