创新互联百度小程序教程:使用动态库

  • 使用动态库
    • 动态库介绍
      • 引入动态库代码包
      • 使用动态库
        • 自定义组件
        • js 接口
        • 页面

    使用动态库

    动态库介绍

    动态库,是指可被添加到小程序内直接使用的功能组件。开发者可直接在小程序内使用动态库,无需重复开发,为用户提供更丰富的服务。具体动态库使用方法参见各个动态库组件。

    创新互联专注于企业网络营销推广、网站重做改版、上思网站定制设计、自适应品牌网站建设、成都h5网站建设商城网站定制开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为上思等各大城市提供网站开发制作服务。

    动态库采用静默更新的方式,即小程序中引用了动态库,动态库更新之后,用户小程序里使用了该动态库的功能将在小程序调起后进行更新,更新操作对用户小程序开发者无感知。

    引入动态库代码包

    使用动态库前,开发者要在 app.json 中声明需要使用的动态库,例如:
    代码示例

     
     
     
    1. {
    2. "dynamicLib": {
    3. // 定义一个别名,小程序中用这个别名引用动态库。
    4. "myDynamicLib": {
    5. // 这是动态库的 'dynamicLibName',是全局唯一的名字,标志着被引用的动态库
    6. "provider": "TheUniqueNameOwnedByThisDynamicLib"
    7. }
    8. }
    9. }

    如上例所示, dynamicLib 定义段中可以包含多个动态库声明,每个动态库声明以一个开发者自定义的动态库引用名作为标识,并指明动态库的唯一标识,及动态库名称。其中,引用名(如上例中的 myDynamicLib)由开发者自定义,无需和动态库名称保持一致。在后续的动态库使用中,该引用名将被用于表示该动态库。

    使用动态库

    使用动态库时,动态库的代码对于开发者来说是不可见的。为了正确使用动态库,开发者应查看动态库的详细信息,阅读提供的动态库开发文档,通过文档来明确动态库提供的自定义组件、js 接口规范等。

    自定义组件

    使用动态库提供的自定义组件,和使用普通自定义组件的方式相仿。在 json 文件定义需要引入的自定义组件时,使用dynamicLib://协议指明动态库的引用名和自定义组件名,例如:

    代码示例

     
     
     
    1. {
    2. "usingComponents": {
    3. // 这里的 'myDynamicLib' 就是上面定义的,本小程序使用此动态库的别名。
    4. // 这里的 'special-list' 是此动态库的公开的自定义组件(publicComponents)的名称。
    5. // 动态库有哪些公开的自定义组件,应从各个动态库的用户文档中得到。
    6. // 这里的 'my-special-list' 也是个自己定的别名,本页面或者本组件在模板中用此别名引用这个自定义组件。
    7. "my-special-list": "dynamicLib://myDynamicLib/special-list"
    8. }
    9. }

    从而页面中可以使用此自定义组件:

     
     
     
    1. 下面这个自定义组件来自于动态库

    js 接口

    使用动态库的 js 接口时,可以使用 requireDynamicLib 方法。例如,动态库提供一个名为 getData 的方法,则可以像下面这样调用:

     
     
     
    1. // 这里的 'myDynamicLib' 就是上面定义的,本小程序使用此动态库的别名。
    2. let lib = requireDynamicLib('myDynamicLib');
    3. // 这里调用动态库里定义的一个叫做 getData 的方法。
    4. // 动态库有哪些公开的方法或属性可以被调用或访问,应从各个动态库的用户文档中得到。
    5. lib.getData();

    页面

    自小程序基础库版本 3.180.3 、开发者工具 3.7.0 开始支持。

    动态库中页面可作为小程序的启动页面,也可以作为被跳转的页面。

    1.启动打开动态库页面的配置方式:
    调起协议中的路径格式为: __dynamicLib__/{dynamicLibName}/{dynamicLibPath}

    2.路由跳转的 url 格式为:
    dynamicLib://{dynamicLibName}/{dynamicLibPath}

    例如 navigateTo 路由跳转:

     
     
     
    1. // 获取基础库版本号
    2. const {SDKVersion} = swan.getSystemInfoSync();
    3. // 通过对比版本号,高于 3.180.3 时再调用
    4. swan.navigateTo({
    5. url: 'dynamicLib://dynamicLibName/pages/index/index'
    6. });

    即将要跳转的页面是动态库dynamicLibName中的pages/index/index页面。

    说明:

    1.启动页面的dynamicLibName必须为线上动态库的名字,不能为别名;
    2.路由跳转 url 中的dynamicLibName可以为线上动态库的名字,也可以为别名,优先当做别名处理;
    3.使用的动态库需在小程序 app.json 中的dynamicLib字段中配置;
    4.支持跳转到动态库页面的 API 为: swan.navigateTo、swan.reLaunch、swan.redirectTo、swan.navigateToSmartProgram。

    Tips:

    • 使用动态库,请确保小程序基础库版本在 3.60.2 及以上,开发者工具版本在 2.4.0 及以上。
    • 目前暂不支持开发者自行开发动态库,但任何小程序开发者都可以使用已有动态库。

    分享题目:创新互联百度小程序教程:使用动态库
    本文地址:http://www.shufengxianlan.com/qtweb/news21/11921.html

    网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联