zoukankan      html  css  js  c++  java
  • 小程序技术实现

    小程序技术实现

     小程序的UI视图和逻辑处理是用多个webview实现的,逻辑处理的JS代码全部加载到一个Webview里面,称之为AppService,整个小程序只有一个,并且整个生命周期常驻内存,而所有的视图(wxmlwxss)都是单独的Webview来承载,称之为AppView。所以一个小程序打开至少就会有2webview进程,正是因为每个视图都是一个独立的webview进程。

    AppService

     可以理解AppService即一个简单的页面,主要功能是负责逻辑处理部分的执行,底层提供一个WAService.js的文件来提供各种api接口,主要是以下几个部分:

     1、 消息通信封装为WeixinJSBridge

     2、日志组件Reporter封装

     3wx对象下面的api方法

     4、全局的App,Page,getApp,getCurrentPages等全局方法

     5、还有就是对AMD模块规范的实现

    AppView

     这里可以理解为h5的页面,提供UI渲染,底层提供一个WAWebview.js来提供底层的功能,具体如下:

     1、消息通信封装为WeixinJSBridge

     2、日志组件Reporter封装

     3wx对象下的api

     4、小程序组件实现和注册

     5VirtualDOMDiffRender UI实现

     6、页面事件触发

    ServiceView通信

     使用消息publishsubscribe机制实现两个Webview之间的通信,实现方式就是统一封装一个WeixinJSBridge对象,而不同的环境封装的接口不一样

  • 相关阅读:
    hdu 3371 Connect the Cities
    hust 1102 Constructing Roads
    hdu 1856 More is better
    hdu 1325 Is It A Tree?
    poj 2828 Buy Tickets (线段树)
    sdut 2351 In Danger (找规律)
    poj 2528 Mayor's posters(线段树)
    poj 2352 Stars (树状数组)
    poj 2492 A Bug's Life (并查集)
    poj 1703 Find them, Catch them(并查集)
  • 原文地址:https://www.cnblogs.com/lingboweifu/p/11912921.html
Copyright © 2011-2022 走看看