你真的了解小程序的自定义编译功能嘛?

微信开发者工具最新的版本里面已经校验了app.json里面的重复pages,之前可以直接把你想要的page放在第一行,默认就会先加载这个page,现在只能通过自定义编译来实现了,先来看一下自定义编译:

默认是普通编译,场景值是1001,会读取app.json里面配置的pages第一行配置,你可以在这里点击添加编译模式。

我列举两个场景,来说明如何使用自定义编译~

一、模拟用户识别图中小程序码

小程序开发工具也有自己的限制,它没办法真实的扫描二维码,没办法识别二维码,也没办法分享到指定的群,这些都只能用开发工具来模拟场景值实现。

我们先来看一下常见的场景值:

由上面可以看出,场景值为1012时,表明是长按图片识别二维码后的效果,下面我就来创建一个识别图片二维码的自定义编译,如下:

启动参数:设置识别二维码后需要给页面传的值。

OK,设置完成后,可以点击一下“编译”按钮,就会直接出现设置好的页面了~

二、模拟用户分享到群并获取群ID

小程序文档提供了获取群ID的功能,大致的思路是,在App.onLunch 或者App.onShow中获取shareTicket,然后再调用wx.getShareInfo()来获取加密后的群ID(encryptedData)和加密初始向量(iv),把这两个值传给服务端解密即可获取微信群的唯一ID~

微信群中的分享小程序后,开发工具是没办法去微信群中点击进入的,我们可以来创建一个获取shareTicket的自定义编译:

选择进入的群:小程序官方提供的9个测试用的群,选择其中的一个。

点击编译按钮,你就可以在App.onShow()中获取到shareTicket:

App({
  onLaunch: function (ops) {
  },
  onShow: function (ops) {
    this.shareTicket == '';
    if (ops.scene == 1044) {
      this.shareTicket = ops.shareTicket ? ops.shareTicket : '';
    }
  },
  globalData: {
    host: 'https://test.com',
  }
})

然后在index.js中去调用wx.getShareInfo(),我就不详细说了~

如果你还想根据微信群ID来显示群名称,也是可以的,方法如下:

<open-data type="groupName" open-gid="xxxxxx"></open-data>

上面的标签,唯一能变的就是open-gid,传入你获取到的群id,即可,标签名称和type值,都不能改变,否则获取不到群名称~

截个图来看一下显示群名称的效果:

原文发布于微信公众号 - 知晓程序员(bainaweb)

原文发表时间:2017-09-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏运维小白

2.4 文件类型

-rw----- 第一位表示文件的类型,之后的表示文件读写权限 /-*- ** 普通文件,包括二进制文件 d 表示目录 c 字符串设备(鼠标、...

1815
来自专栏逸鹏说道

07.LoT.UI 前后台通用框架分解系列之——强大的文本编辑器

LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:h...

3989
来自专栏云计算教程系列

【基础干货】Linux Shell基础教程

shell,也称为“命令行界面”或“CLI”,是与远程Linux服务器交互的主要方法。shell是一个丰富的界面,用于处理文件,管理系统和编写常见任务脚本。如果...

974
来自专栏博客园

Linux常用命令

   ls -a 查询所有子目录和文件,包括隐藏文件【隐藏文件以“.”开头的文件】

1192
来自专栏Python爬虫与算法进阶

Python爬虫进阶(一)使用Selenium进行网页抓取

萌新要学习Selenium了,安装是个坑。还要下载相关配件,可以参考python 安装selenium环境(https://my.oschina.net/hyp...

3425
来自专栏前端知识分享

第107天:Ajax 实现简单的登录效果

Ajax是一项使局部网页请求服务器信息,而不需整体刷新网页内容的异步更新技术。这使得向服务器请求的数据量大大减少,而且不会因局部的请求失败而影响到整体网页的加载...

631
来自专栏菩提树下的杨过

docker学习(5) 在mac中创建mysql docker容器

github上有一个专门的docker-libary项目,里面有各种各样常用的docker镜像,可以做为学习的示例,今天研究下其中mysql镜像的用法,国内镜像...

1898
来自专栏浪淘沙

Shell学习总结

一、基础指令     1.ls指令         ../    上级目录         ./    当前目录         ls -al     ...

1133
来自专栏React Native开发圈

React Native 弹出框组件

npm install--save react-native-popup-dialog

691
来自专栏iOS 开发杂谈

学习笔记之git命令行的详细使用

git仓库,你可以简单理解成一个目录,这个目录里面的所有文件都可以被git仓库管理起来,每个文件的修改、删除,git都能跟踪,以便任何时刻都可以追踪历史,或者在...

622

扫码关注云+社区