uniapp小程序问题总结

1、uView的form校验,手动赋值某个字段后,页面校验信息未同步更新校验问题。

问题:手动赋值是Number,将其转换成字符串类型,则可以校验通过

this.$set(this.formParamters,'estimateScore',sum.toString())

2、解决uni-app中第二次访问tabbar页面时不会加载数据的问题

原因: tabbar页面是一个webview,而在切换页面时候,webview没有关闭,只是被其他页面覆盖了而已,需要显示时候就把它显示出现,所以页面是不会重新加载数据的。

解决方法: 将相关方法写在onShow()里面

3、uniapp跳转到tabbar页并刷新页面

uni.switchTab({
        url:'/pages/Dynamic/main',
        success: (res) => {
        	let page = getCurrentPages().pop();
        	if (page == undefined || page == null) return;
        	page.onLoad();
        }
     })

4、使用depp在小程序中子组件修改第三方ui库uview,样式不生效问题

问题:修改子组件第三方ui库样式,样式不生效

解决:子组件下要和data同级下添加options: {styleIsolation: 'shared' // 解除样式隔离}

5、uni-app 中实现 onLaunch 异步回调后执行 onLoad 最佳实践

解决方案一:(使用async后调用其他接口有问题)

既然在onLaunch中请求是异步的原因导致这个问题,那改成同步的不就行了,这里利用Promise来解决这个问题

解决方案二:

正好项目中用到了uni-simple-router插件,提供了全局前置守卫事件beforeEach,其本质是代理了所有的生命周期,让生命周期更加可控,这样就可以很好的解决我们面临的问题了。

解决方案三:使用全局变量

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
uniapp是一款跨平台的前端开发框架,它可以用来开发小程序、H5、App等多种应用。其中uniapp小程序是国内非常流行的一种应用类型。而websocket是一种基于TCP的协议,它可以实现客户端与服务器之间的实时双向通信。 在uniapp小程序中实现websocket聊天功能,首先需要通过uni.request函数与后台服务器建立websocket连接。在小程序的页面中,可以通过监听用户的输入,将用户的聊天内容发送给服务器。服务器接收到消息后,将消息发送给其他用户。同时,服务器也会将其他用户发送的消息推送给当前用户。 为了提高用户体验,可以在小程序前端页面中实时显示其他用户发送的消息。当用户收到新的消息时,可以通过uni.showModal函数弹出消息提示框,提醒用户有新的消息。并且可以通过uni.vibrateLong函数进行震动提示。 同时,为了保证聊天的安全性,可以对消息内容进行加密处理,确保消息不会被第三方截取或篡改。可以使用加密算法对消息内容进行加密,在前端发送消息前进行加密,在接收消息后进行解密。 总结来说,uniapp小程序通过与后台服务器建立websocket连接,实现了实时的聊天功能。用户可以通过页面发送消息,服务器将消息推送给其他用户。前端页面实时显示其他用户发送的消息,并通过弹出框和震动等方式提醒用户。同时,为保证聊天的安全性,可以对消息内容进行加密处理。这样就实现了一个简单的uniapp小程序websocket聊天功能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值