xh747364 / micro-app-faq Goto Github PK
View Code? Open in Web Editor NEW《大家来找茬》小程序
《大家来找茬》小程序
初级:
问题1:关于 webview 配置问题
产生原因:在配置webview域名时候,校验文件已经放到服务器上,但还是提示【校验出错,请检查校验文件是否配置正确】
解决方法:1、检查是否用了cdn,关闭加速,然后重新解析域名回IP;2、不允许做重定向;3、加密套件不合规,建议更换SSL证书,证书安全性可在亚洲诚信官网 https://myssl.com/ 查询 相关合规标准可参考
问题2:关于 video 组件问题
产生原因:使用video播放竖屏的视频时,如何使全屏播放时也是竖屏
解决方法:给video增加属性direction ="0",详见文档:https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/component/media-component/video 的 direction 属性
问题3:关于 tt:if 使用问题
产生原因:在使用 tt:if 判断 variable == 00 时候不生效,且预览报错
解决方法:将 variable == 00的00加上引号
问题4:提审后请求报错
产生原因:本地测试请求正常,提交审核后请求报错【url is not valid domain】
解决方法:请求的url需要设置白名单中
问题5:关于 tt.login 使用问题
产生原因:调用 tt.login 返回 【login: fail invalid appid touristappid】
解决方法:1、体验版 appid需要换成开发的 appid;2、登录开发平台账号需要统一,否则appid无效。
问题6:关于 tt.getExtConfigSync 使用问题
产生原因:tt.getExtConfig 可以获取到 ext.json 中配置的 ext 字段,而 tt.getExtConfigSync 获取不到
解决方法:同步方法需要使用变量接收,比如let res = tt.getExtConfigSync();
问题7:关于 rich-text 组件问题
产生原因:在使用 rich-text 组件时候无法解析【<】、【>】等特殊字符
解决方法:
Life is likea box of chocolates
,需要使用 html 字符实体,不然 < > 会导致解析问题中级:
问题1:关于ios请求报错【request: fail app in background】问题
产生原因:不管是安卓还是iOS,在后台调用API是会返回这个报错的(包括这个创建网络请求),15.0.0抖音已修复
解决方法:在全局设置一个mark,onShow和onHide中加个标识去判断前后台~,调用onshow时mark=true,onhide
mark=false,在调用request时判断mark标识。
问题2:关于使用 websocket 发送二进制数据在 IDE 正常,但是真机调试,服务端收到的是 String 类型的数据,请使用真机调试
产生原因:uint8array 对象传递
解决方法:要使用 arraybuffer 对象传递,而不是 uint8array 对象
问题3:已授权订阅消息成功,但是后台请求接口返回【该用户未订阅】
产生原因:模板ID和发送的模板ID不一致
解决方法:检查下订阅的模板ID和发送的模板ID是否一致
问题4:连续调用 tt.login 在 iOS 上报错 【login:fail login is in progress, please do not call again】
产生原因:重复调用登录
解决方法:登录逻辑里排查一下
题目一:
问题描述: 在小程序切入后台(注:是点击小程序右上角【×】切入后台,而不是APP切入后台)后调用 tt.request 会触发报错 【request: fail app in background】
问题原因: 小程序弹框报错的原因:页面onHide时发送了网络请求,并在请求失败时调用了弹窗来提示请求失败。重新进入页面时弹窗并没有被关闭,所以重新进入时能看到弹窗报错。
解决方案: 在页面onShow、onHide时增加判断标识,进入前台时关闭弹窗(在后台的弹窗不能被看到,也可选择console等处理方式)。如果该网络请求比较重要,可尝试重新发送(但目前来看是小程序系统问题,发送还会失败);或者失败后在storage中做个标识,等onShow的时候重新发送。
题目二:
问题描述: 使用 websocket 发送二进制数据在 IDE 正常,但是真机调试,服务端收到的是 String 类型的数据,请使用真机调试
问题原因: websocket发送数据时,仅支持发送string和arraybuffer类型,示例中发送的是使用Uint8Array创建的无符号整型数组。arraybuffer表示一段可连续存储数据的内存。
解决方案: 使用Uint8Array创建的实例对象的arraybuffer存在这个对象的buffer属性中,获取后,作为参数发送。
题目三:
问题描述: 已授权订阅消息成功,但是后台请求接口返回【该用户未订阅】
问题原因: 服务端发送请求时参数名不对
解决方案: 将参数名修改正确,appid修改为app_id,tplid改为tpl_id
题目四:
问题描述: 连续调用 tt.login 在 iOS 上报错 【login:fail login is in progress, please do not call again】,请使用iOS真机调试
问题原因: tt.login短时间内重复调用
解决方案: 避免短时间内重复调用。如一定需要获取,可尝试失败后重试。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.