# 字节小程序
# 字节示例小程序
# 创建方式
- 打开字节的抖音开发者工具
- 新建小程序
- 选择小程序能力展示模版
# 兼容情况
node_modules
中的库需要先使用 构建 npm- 其他兼容情况查看下方详细列表
# 已知问题
# 部分 API 未实现
- 解决方案:可以使用 canIUse 来判断兼容性,不兼容的 API 建议避免使用或者查询文档使用 FinClip 小程序提供的 API
# 不支持 slot-scope
- 解决方案:暂不支持,待适配
# 生命周期执行时机不一致
注意
- 字节小程序生命周期触发顺序:Page onLoad -> Component created -> Component attached -> Page onShow
- FinClip 小程序生命周期触发顺序:Component created -> Component attached -> Page onLoad -> Page onShow
# 组件嵌套生命周期执行会不一致
示例代码
<comp-a>
<comp-b/>
</comp-a>
注意
- 像 page 中的这种结构,FinClip 的方案是 comp-b 属于 page 的,所以不管 comp-a 中是否有 slot 节点,都会去创建 comp-b,只是不会渲染到页面上(这样会触发 created、attached,不会触发 ready)。
- 字节的方案是需要渲染才创建,相当于 comp-b 是属于 comp-a 的,当 comp-a 没有 slot 节点的时候就不会执行 comp-b 的生命周期。
# ttml 属性格式不一样
<!-- 错误 -->
<video id="myVideo" src={{src}}></video>
<!-- 正确 -->
<!-- 必须使用引号 -->
<video id="myVideo" src="{{src}}"></video>
# setData 保存 canvas 或者 canvasContext 会报错
- canvas 或者 canvasContext 与渲染无关,可以直接用
this.canvas = canvas
这种方式保存到实例上
# 样式文件不支持 id 选择器
- 解决方案:暂不支持,待适配
# 暂不支持字节小程序插件、字节小游戏功能
- 解决方案:暂不支持,待适配