WeChat.MiniProgram.Code (wechat v0.2.0)
小程序码
Link to this section Summary
Types
自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
是否需要透明底色,为 true
时,生成透明底色的小程序码
auto_color 为 false 时生效,使用 rgb 设置颜色
扫码进入的小程序页面路径
场景值
二维码的宽度
Link to this section Types
auto_color()
Specs
auto_color() :: boolean()
自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
code_options()
Specs
code_options() :: %{ path: path(), width: width(), auto_color: auto_color(), line_color: line_color(), is_hyaline: is_hyaline() }
is_hyaline()
Specs
is_hyaline() :: boolean()
是否需要透明底色,为 true
时,生成透明底色的小程序码
line_color()
Specs
line_color() :: map()
auto_color 为 false 时生效,使用 rgb 设置颜色
例如 %{r: "xxx",g: "xxx",b: "xxx"}
十进制表示
path()
Specs
path() :: String.t()
扫码进入的小程序页面路径
最大长度 128
字节,不能为空;对于小游戏,可以只传入 query
部分,来实现传参效果,如:传入 ?foo=bar
,
即可在 wx.getLaunchOptionsSync
接口中的 query
参数获取到 {foo:"bar"}
。
scene()
Specs
scene() :: String.t()
场景值
最大32
个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~
,
其它字符请自行编码为合法字符(因不支持%,中文无法使用 UrlEncode
处理,请使用其他编码方式)
scene
字段的值会作为 query
参数传递给小程序/小游戏。用户扫描该码进入小程序/小游戏后,开发者可以获取到二维码中的 scene
值,再做处理逻辑。
调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx
进行模拟,开发工具模拟时的 scene
的参数值需要进行 encodeURIComponent
width()
Specs
width() :: 280..1280
二维码的宽度
单位 px
。最小 280px
,最大 1280px
Link to this section Functions
create_code(client, path, width \\ 430, options \\ %{})
Specs
create_code(WeChat.client(), path(), width(), code_options()) :: WeChat.response()
生成的小程序码 - 官方文档
获取小程序码,适用于需要的码数量较少的业务场景。通过该接口生成的小程序码,永久有效,有数量限制, 详见获取二维码。
create_code_unlimited(client, scene, options \\ %{})
Specs
create_code_unlimited(WeChat.client(), scene(), code_options()) :: WeChat.response()
生成的小程序码 - 官方文档
获取小程序码,适用于需要的码数量极多的业务场景。通过该接口生成的小程序码,永久有效,数量暂无限制, 详见获取二维码。
create_qrcode(client, path, width \\ 430)
Specs
create_qrcode(WeChat.client(), path(), width()) :: WeChat.response()
生成的小程序二维码 - 官方文档
获取小程序二维码,适用于需要的码数量较少的业务场景。通过该接口生成的小程序二维码,永久有效,有数量限制, 详见获取二维码。
download(file_path, create_fun)
Specs
download(file_path :: Path.t(), create_fun :: (() -> WeChat.response())) :: WeChat.response() | :ok | {:error, File.posix()}