- 不要用原生的img标签 ,app端会不显示, 需要用image 标签
- 长按事件用 @longpress 监听触发,抬起用@touchend 监听触发,如果用 @touchstart 和 @touchend 组合用的话,app端无法监听到长按事件
- 场景:自建聊天室,需要每发送或者接收一条消息则滚动到最底部 。
-
<scroll-view scroll-y="true" :scroll-top="scollViemTop" id="list" >
//当聊天数据发送变化时,则更新滚动条下滑的高度
watch:{ list(value){ setTimeout(()=>{ this.scollViemTop = this.scollViemTop+1000; //想要滚动到最底部,则需要更新的滚动高度大于剩余滚动条的长度,所以可以设置的尽可能的大 },200) } },
-
- 上传文件api: uni.uploadFile 这是个巨坑
- 需要自定义参数接收 const uploadTask = uni.uploadFile(OBJECT) ,要不然发送不了,后端也接收不到,至少安卓端真机测试是这样的
- header对象中传入 'content-type': 'multipart/form-data', 否则后端解析不出来文件,这个根据需求和后端对接
- 进入app会默认永久拒绝语音权限,如果要获取语音权限,需要在根目录下manifest.json,勾选 App模块配置 --》 Speech(语音输入,只能选择一个) ---》 讯飞语音识别
- 兄弟组件传值使用 uni.$emit() / uni.$on()
- nvue项目 , 组件挂载构子用mounted , 页面挂载则用onLoad
- App平台 v3 模式暂不支持在 js 文件中引用"./styles/main.less" 需要在 style 内引用
- ui单位尺寸 rpx为响应式,750px设计稿的尺寸比例: 1px = 1rpx , 屏幕大于960px时,则以375比例显示
- 真机调试页面,vConsole使用
- 在main.js直接引入vConsole.min.js,只可以在H5中使用,APP中是一片空白。
如果要在APP中使用,需要借助render.js,在页面中单独引入,代码如下:<script module="vconsole" lang="renderjs"> import VConsole from '../../static/vConsole.js' new VConsole(); </script>
-