zzcBridge

    2.1.2 • Public • Published

    zzcBridge

    js与native相互通讯桥梁,封装单一调用入口,并在控制台打印日志,localStorage持久化保存日志

    Build Status

    文档

    测试页面(用APP访问)

    fuck

    • 除了功能接口,还有各项目的具体业务需求接口
    • cordova不能准确触发ready状态
    • Android或iOS特有接口
    • 将log永久保存起来,同时也打印到控制台。

    用例:

    npm install --save zzcBridge

    拷贝 ./dist 目录版本,通过<script/>引入。

    下面用例的接口都是假的

    调用cordova接口,example:

    import * as zzcBridge from 'zzcBridge';
    const {
      init,
      exec 
    = zzcBridge;
     
    // 初始化,定义需要用到的接口
    init([
      'setTitle',
      'alert',
      'setTabbarColor'
    ]);
     
    // 警告
    document.onclick = function () {
      exec('alert', {content: '警告'});
    }
     
    exec('setTitle', {
      content: '标题',
      success: function (res) {
        console.log(res);
      },
      error: function (err) {
        console.log(err);
      }
    });
     
     
    exec('setTabbarColor', {color: 'light'})
    // 等同于success()和error()
    .then(function (res) {
      console.log(res);
    }, function (err) {
      // 如果接口不存在 err.code === 404
      console.log(err);
    });
     

    直接调用cordova接口不用init()

    import {
      exist,
      execUnsafe
    } from 'zzcBridge';
     
    if (exist('alert')) {
      execUnsafe('alert', {content: '经过'});
    } else {
      alert('经过');
    }
     

    注册接口给native,example:

    import {register} from 'zzcBridge';
     
    // 断网的时候调用
    register('offline', function () {
      console.log('断网啦');
    });
     
    // 联网的时候调用
    register('online', function () {
      console.log('联网啦');
    });

    依赖

    • events
    • 低版本浏览器需要promise polyfill

    自动化npm脚本

    • test 单元测试(包含:lint)
    • build:dev 构建源码(development模式)
    • build:pro 构建源码(production模式)
    • compile 编译源码
    • lint 检测代码语法和风格
    • lint:watch 增强版的lint
    • install-git-hooks 安装git hooks
    • doc 生成文档
    • build 构建项目(包含:test, build:dev, build:pro, compile, doc)
    • prepublish 发布前的测试
    • postpublish 发布后同步到github
    • demos 生成demos页面

    APIS

    • init(apis) 初始化API,只能调用一次
    • exec(api, params) 调用cordova API,会等待ready之后才调用
    • register(api, callback) 注册js API给native调用
    • exist(api) 判断api是否存在
      • exist() 判断cordova对象是否存在
    • ready(success, error) 当cordova API准备好后调用success函数,超时则调用error函数
    • ready() cordova API是否准备好
    • execUnsafe(api, params) 调用cordova API,不会等待ready
    • events register是events.on的别名,所以...

    Keywords

    none

    Install

    npm i zzcBridge

    DownloadsWeekly Downloads

    1

    Version

    2.1.2

    License

    ISC

    Last publish

    Collaborators

    • daifee