2018-07-01

2018-07-01

[18-07-25]小程序主动打开App限制条件
[18-07-16]小程序自定义组件中, 不支持使用slot节点承载cover-view组件
[18-07-12]使用flex进行布局时, input输入框不支持使用flex-shrink来根据布局弹性缩小
[18-07-01]微信小程序调用camera组件api ctx.stopRecord时报错operateCamera:fail

[18-07-25]小程序主动打开App限制条件

小程序现在可以主动唤起app, 但是有几个限制

  • 同一个开放平台账号下的小程序和app无需关联即可完成跳转, 非同一开放平台账号下的小程序需与app成功关联后才支持跳转, 详见开放平台文档#移动应用拉起小程序功能
  • 打开app必须由用户主动触发, 不能通过api调用, 唤起App使用button组件, 唤起小程序使用navigator组件
  • 只有几个场景值能打开app, 详见小程序文档#launchApp
  • 不能设置要打开什么app, 只能打开源app, 意思就是从App a唤起小程序, 小程序唤起App时只能打开App a
[18-07-16]小程序自定义组件中, 不支持使用slot节点承载cover-view组件

如题, 测试所得, 简单记录一下.

[18-07-12]使用flex进行布局时, input输入框不支持使用flex-shrink来根据布局弹性缩小

这是因为对于input输入框, 浏览器初始化一个默认最小宽度, 奇怪的是这个浏览器的默认样式在开发者工具上查看user agent stylesheet也没有看到.

如果需要让input输入框弹性缩小占据剩余空间的话, 可以使用一个额外元素包裹住input

<div style="display: flex;">
  <div style="flex: 0 0 100px;">这里占据100px</div>
  <div style="flex: 1;">
    <input type="text" placeholder="这里自动占据剩余空间" style="width: 100%;"/>
  </div>
  <div style="flex: 0 0 200px;">这里占据200px</div>
</div>

除了这样比较挫的做法之外, 在stackoverflow的问题上找到另一个方法, 就是设置input的min-width为0, 目前没有尝试过不知道有没有什么副作用.

[18-07-01]微信小程序调用camera组件api ctx.stopRecord时报错operateCamera:fail

真机测试时出现调用camera组件api ctx.stopRecord来停止拍摄视频时全部都跳到了fail回调, 报错信息(大概)为errMsg: operateCamera:fail, is stopping, 在网上根本找不到任何信息, 只能从代码一行行去推敲逻辑, 最终发现在某个地方调用了两次ctx.startRecord, 才会到时ctx.stopRecord调用失败, 不过小程序的报错信息的确价值不大, 可有信息太少.