UI模块引擎使用流程

1 说明

在应用开发过程中,一些效果使用纯前端h5实现体验比较差,为此开发者会选择相应的原生UI模块来替代,原生模块性能和体验好,但目前存在的一个问题就是界面可定制性比较差,不能百分百满足需求。

为此,结合原生模块的性能和体验以及前端开发的灵活性,我们推出了UITemplate模块引擎(查看文档),UITemplate模块和普通的UI类的模块使用流程一样,将小程序UI组件的路径传入模块方法,模块解析加载后显示出小程序UI页面。目前APICloud官方已经在模块Store里面提供了几种常用的小程序UI组件模块,开发者可以直接下载到本地使用,方便地修改里面的样式效果。选择小程序的语法,可以让广大熟悉小程序开发的开发者更快的上手,快速开发出想要的UI效果。

特别说明:目前该模块支持iOS,Android平台正在努力适配中,马上就能与大家见面了,欢迎广大开发者体验和反馈

2 使用流程

2.1 添加UITemplate模块

和使用其它模块一样,首先需要在控制台模块里面添加UITemplate模块,如图:

图片说明

2.2 添加小程序UI组件

2.2.1 小程序包结构及目录介绍

在使用小程序UI模块之前,我们需要了解小程序包的结构,如下图所示,一个小程序包里面有app.json、app.wxss、app.js等文件,可以在这些文件里面做一些全局的配置,一个小程序包里面可以包含多个小程序UI组件,这些UI组件需要在app.json文件中注册配置。更多详情访问微信官方小程序开发文档

图片说明

app.json文件的简单配置:

  1. {
  2. "pages": [
  3. "pages/uitalertview/alertview",
  4. "pages/uitconfirmview/confirmview"
  5. ]
  6. }

而一个小程序UI页面由四个文件组成,它们的文件名相同,只是扩展名不一样。

图片说明

2.2.2 添加小程序UI组件

开发者可以自己开发小程序UI模块,也可以直接去模块Store里面找到官方提供的小程序UI模块,下载到本地,将其放置到代码包里面对应的目录下使用。

图片说明

2.3 运行小程序UI模块

这里我们以在自定义loader中使用为例,添加好UITemplate模块,然后编译自定义loader,下载安装到手机。

在页面中调用UITemplate模块的初始化方法,传入小程序包所在的根目录:

  1. function apiready() {
  2. var UITemplate = api.require('UITemplate');
  3. var path = 'widget://uitemplate';
  4. UITemplate.init({
  5. path: path
  6. });
  7. }

使用openView方法显示小程序UI组件:

  1. var UITemplate = api.require("UITemplate");
  2. UITemplate.openView({
  3. name: 'confirm',
  4. url: 'pages/uitconfirmview/confirmview',
  5. rect: {
  6. x: 0,
  7. y: 0,
  8. h: 'auto',
  9. w: 'auto'
  10. },
  11. level: 'alert',
  12. data: {
  13. pageParam: {
  14. title: { content: 'APICloud 温馨提示' },
  15. msg: { content: '账户余额不足,红包功能无法使用!' },
  16. buttons: [{ content: '返回', style: 'color: #000;' },{ content: '充值' }]
  17. }
  18. }
  19. },function(ret,err){
  20. if(ret && 'buttonClick' == ret.type ){
  21. UITemplate.closeView({name: 'confirm'});
  22. // 此处可填写回调代码逻辑
  23. var index = ret.buttonIndex;
  24. }
  25. });