一种微信webapp调试方法及装置与流程

文档序号:18164139发布日期:2019-07-13 09:29阅读:169来源:国知局
一种微信webapp调试方法及装置与流程

本发明涉及教育系统领域,尤其涉及一种微信webapp调试方法及装置。



背景技术:

目前微信支持内嵌网页,使用buiwebapp嵌入的webapp在调试的过程中,会遇到多个问题,微信打开的web页面会缓存,微信的返回也会有缓存,苹果微信的底部导航条遮挡等等多个问题,造成调试和使用的困难,微信没有提供webapp(特别是buiwebapp)的调试方式(e.g清除缓存)以及多个问题的解决方案。

因此,现有技术还有待于改进和发展。



技术实现要素:

鉴于上述现有技术的不足,本发明的目的在于提供一种微信webapp调试方法及装置,旨在解决微信webapp的调试的问题。

本发明的技术方案如下:

一种微信webapp调试方法,其中,包括步骤:

a.获取weapp调试过程中的环境变量;

b.通过所述环境变量判断当前环境是否为开发环境;

c.当所述环境变量为开发环境时,监听全局事件;

d.根据所述全局事件类型,进行对应事件类型的页面加载。

所述的微信webapp调试方法,其中,所述步骤a中,所述环境变量用于检测调试过程中的环境是生产环境或开发环境。

所述的微信webapp调试方法,其中,所述步骤b与步骤c之间还包括步骤:

检测当前设备是否为ios设备;

当设备为ios设备时,不同步历史记录。

所述的微信webapp调试方法,其中,所述步骤c包括:

监听全局事件开始前,去除之前的页面缓存。

所述的微信webapp调试方法,其中,所述步骤d包括:

监听路由的返回事件,对页面进行全局刷新;

监听路由的后退事件,设置需要刷新的页面,并判断退回的页面是否需要刷新,当是时,则刷新页面;

监听当前页面是否为指定debug页面,若是,则自动执行初始化函数。

所述的微信webapp调试方法,其中,所述步骤a之前还包括:

预先设置指定debug页面对应的参数值,并设定所述debug页面的初始化函数。

所述的微信webapp调试方法,其中,监听当前页面是否为指定debug页面,若是,则自动执行初始化函数的步骤中,获取当前页面的参数值,若当前页面的参数值为制定debug页面参数值时,执行相应的初始化函数。

一种微信webapp调试装置,其中,所述装置包括至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的webapp调试方法。

一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行如上所述的微信webapp调试方法。

一种计算机程序产品,其中,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执如上所述的微信webapp调试方法。

有益效果:本发明公开了一种微信webapp调试方法及装置,其中,所述方法包括步骤:a.获取weapp调试过程中的环境变量;b.通过所述环境变量判断当前环境是否为开发环境;c.当所述环境变量为开发环境时,监听全局事件;d.根据所述全局事件类型,进行对应事件类型的页面加载;本发明所述方案,实现了微信webapp的调试,根据weapp调试过程中的环境变量获取当前环境,并对全局事件进行监听,从而实现对应的事件类型的页面加载,由于微信潜入的是webapp,所以可以用web的方式比较hack的解决这些调试上的问题,完成快捷调试,并且通过该方法可以清除苹果微信的底部导航条遮挡等多个问题。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1为本发明所述微信webapp调试方法的步骤流程图。

图2为本发明所述微信webapp调试装置的结构示意图。

具体实施方式

本发明提供一种微信webapp调试方法及装置,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

请参阅图1,为本发明所述微信webapp调试方法的步骤流程图,本发明公开了一种微信webapp调试方法,其中,包括步骤:

s1.获取weapp调试过程中的环境变量;

s2.通过所述环境变量判断当前环境是否为开发环境;

s3.当所述环境变量为开发环境时,监听全局事件;

s4.根据所述全局事件类型,进行对应事件类型的页面加载。

进一步的,所述的微信webapp调试方法,其中,所述步骤s1中,所述环境变量用于检测调试过程中的环境是生产环境或开发环境。

进一步的,所述的微信webapp调试方法,其中,所述步骤s2与步骤s3之间还包括步骤:

检测当前设备是否为ios设备;

当设备为ios设备时,不同步历史记录。

所述的微信webapp调试方法,其中,所述步骤s3包括:

监听全局事件开始前,去除之前的页面缓存。

进一步的,所述的微信webapp调试方法,其中,所述步骤s4包括:

监听路由的返回事件,对页面进行全局刷新;

监听路由的后退事件,设置需要刷新的页面,并判断退回的页面是否需要刷新,当是时,则刷新页面;

监听当前页面是否为指定debug页面,若是,则自动执行初始化函数。

进一步的,所述的微信webapp调试方法,其中,所述步骤s1之前还包括:

预先设置指定debug页面对应的参数值,并设定所述debug页面的初始化函数。

进一步的,所述的微信webapp调试方法,其中,监听当前页面是否为指定debug页面,若是,则自动执行初始化函数的步骤中,获取当前页面的参数值,若当前页面的参数值为制定debug页面参数值时,执行相应的初始化函数。

本发明所述微信webapp调试方法,具体说明如下,关于术语描述,buiwebapp:buiweapp是一个基于zeptojs或jquery的ui交互框架,专注webapp开发,提供丰富的组件,灵活的定制,超多的模板及参考案例,帮助开发者快速构建webapp,最终可以在浏览器,微信公众号运行,以及结合dcloud、apicloud、appcan等,第三方平台打包成hybridapp,完美适配,一次开发,多端运行,并保持一致体验。

引入buiwebapp,设置一个变量is_production(该变量用于检测环境为生产环境还是开发环境),获取当前页面url,判断url为生产环境还是开发环境,根据环境修改is_production的值、

检测当前设备是否为ios设备,假设是,设置buiwebapp的路由属性,将该属性设置为一个false值不同步历史记录(苹果微信的底部导航条遮挡问题是因为历史记录引起的,针对ios的路由初始化时去除历史记录即可解决该问题);判断当前环境是否为开发环境,当否时跳过步骤,当是时执行下一步。

获取bui的loader对象,将缓存属性设置为false(在路由初始化之前,先去掉模块的缓存,这样每次进入页面,都会是一个新的脚本,解决微信自带的缓存问题),监听路由的返回事件,在返回事件发生时,对页面进行全局刷新,(解决页面在返回后没有刷新的问题),监听全局的后退事件,设置需要刷新的页面,判断当前退回的页面是否需要刷新,如果需要刷新,则刷新页面(这个方法可以监听到物理键的返回兼容安卓机型);监听当前页面的url是否为制定debug页面,如果是的话,则自动执行初始化函数(比如需要测试一个表单页面,表单每次提交需要反复填写大量信息浪费调试事件,用该方法检测到是需要debug的页面时,自动填充表单数据节约debug时间),完成整个步骤。

进一步的,本发明还公开了一种微信webapp调试装置,如图2所示,为所述装置的结构示意图,其中,所述装置10包括至少一个处理器110;以及,

与所述至少一个处理器通信连接的存储器120;其中,

所述存储器120存储有可被所述至少一个处理器110执行的指令,所述指令被所述至少一个处理器110执行,以使所述至少一个处理器110能够执行如上所述的webapp调试方法。

处理器110用于完成装置10的各种控制逻辑,其可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acornriscmachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp核、或任何其它这种配置。

存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的用于教育操作系统的授权登录方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行装置10的各种功能应用以及数据处理,即实现上述方法实施例中的webapp调试方法。

本发明上述装置具体实现流程为:引入buiwebapp,设置一个变量is_production(该变量用于检测环境为生产环境还是开发环境),获取当前页面url,判断url为生产环境还是开发环境,根据环境修改is_production的值、

检测当前设备是否为ios设备,假设是,设置buiwebapp的路由属性,将该属性设置为一个false值不同步历史记录(苹果微信的底部导航条遮挡问题是因为历史记录引起的,针对ios的路由初始化时去除历史记录即可解决该问题);判断当前环境是否为开发环境,当否时跳过步骤,当是时执行下一步。

获取bui的loader对象,将缓存属性设置为false(在路由初始化之前,先去掉模块的缓存,这样每次进入页面,都会是一个新的脚本,解决微信自带的缓存问题),监听路由的返回事件,在返回事件发生时,对页面进行全局刷新,(解决页面在返回后没有刷新的问题),监听全局的后退事件,设置需要刷新的页面,判断当前退回的页面是否需要刷新,如果需要刷新,则刷新页面(这个方法可以监听到物理键的返回兼容安卓机型);监听当前页面的url是否为制定debug页面,如果是的话,则自动执行初始化函数(比如需要测试一个表单页面,表单每次提交需要反复填写大量信息浪费调试事件,用该方法检测到是需要debug的页面时,自动填充表单数据节约debug时间),完成整个步骤

进一步的,本发明还公开了一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行如上所述的微信webapp调试方法。

进一步的,本发明还公开了一种计算机程序产品,其中,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执如上所述的微信webapp调试方法。

以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络电子设备等)执行各个实施例或者实施例的某些部分的方法。

除了其他之外,诸如"能够'、"能"、"可能"或"可以"之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地不旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有学生输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。

综上所述,本发明公开了一种微信webapp调试方法及装置,其中,所述方法包括步骤:a.获取weapp调试过程中的环境变量;b.通过所述环境变量判断当前环境是否为开发环境;c.当所述环境变量为开发环境时,监听全局事件;d.根据所述全局事件类型,进行对应事件类型的页面加载;本发明所述方案,实现了微信webapp的调试,根据weapp调试过程中的环境变量获取当前环境,并对全局事件进行监听,从而实现对应的事件类型的页面加载,由于微信潜入的是webapp,所以可以用web的方式比较hack的解决这些调试上的问题,完成快捷调试,并且通过该方法可以清除苹果微信的底部导航条遮挡等多个问题。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1