当前位置: 首页 > news >正文

微信公众平台微网站开发seo建站平台哪家好

微信公众平台微网站开发,seo建站平台哪家好,wordpress 投票系统,cms 网站在开发程序过程中通信功能还是比较常用到的,本文主要介绍的是uniapp中websocket的使用 websocket建立连接后,断开、心跳机制重新链接的一个过程。 关于uni.connectSocket可仔细阅读uniapp官网中的uni.connetSocket以及连接socket创建的实例SocketTask …

在开发程序过程中通信功能还是比较常用到的,本文主要介绍的是uniapp中websocket的使用

websocket建立连接后,断开、心跳机制重新链接的一个过程。

关于uni.connectSocket可仔细阅读uniapp官网中的uni.connetSocket以及连接socket创建的实例SocketTask 

具体代码如下:内有代码详细注解,如果疑问可在评论区留言。

<script>var socketTaskChat//全局定义websocket创建的实例名称var interVal //全局定义定时执行心跳监测定时器ID,用于清除定时器var reconnectTimer //全局定义定时执行一次重连定时器ID,用于清除定时器export default{data(){},onLoad(){//设置屏幕保持常亮不灭uni.setKeepScreenOn({keepScreenOn: true});//创建socket链接this.webSocketConfig()},methods:{//建立socekt链接webSocketConfig(){//清除心跳、重连定时器,停止心跳检测clearTimeout(reconnectTimer)clearInterval(interVal)var that = thisvar socketOpen = false;uni.closeSocket() //socketTaskChat//创建连接socketTaskChat = uni.connectSocket({url: "wss://ws.xxxx.net/",data(){return {};},header:{'content-type': 'application/json',},method: 'GET',success: res =>{console.log("socket链接成功")},fail: () =>{that.$refs.uToast.showToast(1, "WebSocket连接打开失败")},complete: () =>{console.error("complete")}});socketTaskChat.onError(function(res){uni.showToast({title: '连接超时,请耐心等候',duration: 4000,icon: 'none',mask: true})//心跳监测that.handleHeart()});socketTaskChat.onClose(function(res){console.error("onClose")that.isConnect = false});socketTaskChat.onOpen(function(res){// clearInterval(interVal)console.error("onOpen")socketOpen = true;that.isConnect = true//停止心跳检测clearTimeout(reconnectTimer)clearInterval(interVal)});socketTaskChat.onMessage(function(res){// console.error("res", res)const data = JSON.parse(res.data);if(data.tips == '未开播'){that.$refs.uToast.showToast(1, "抖音未开播")that.contentShow = "当前直播间未开播,确定关闭吗?"that.showModal = true}else if(data.status == 1){that.isLive = 1//接收到的消息处理区域//xxxxxxx//xxxxxxx}});},//心跳检测handleHeart() {var that = thisconsole.error("心跳监测")if (that.isLive == 1) { //满足:已经开启过链接且中途断开方可重连//设置定时开始心跳检测interVal = setInterval(function() {//发送消息,验证是否存在心跳that.handleSend()}, 5 * 1000)}/* else {console.error("心跳监测222", interVal)if (interVal) {clearInterval(interVal)}} */},//发送消息handleSend() {var that = thisvar data = {state: 1,method: 'heartbeat'}socketTaskChat.send({data: data,success(res) {},fail(res) {console.log('发送失败', that.isLive)//重连socektthat.reconnect()}});},// 重新连接socketreconnect() {var that = this// 停止发送心跳clearTimeout(reconnectTimer)clearInterval(interVal)if (that.isLive == 1) { //满足:已经开启过链接且中途断开方可重连//定时执行一次websocket链接方法,进行socket重连reconnectTimer = setTimeout(() => {//开启socket链接that.webSocketConfig()}, 5 * 1000)}},}}</script>

我这边实现的是类似抖音直播评论区的展示效果,每接收一条数据从列表最底部加入更新

transform 属性允许你旋转,缩放,倾斜或平移给定元素。这是通过修改 CSS 视觉格式化模型的坐标空间来实现的

旋转 rotate(deg)

可以对元素进行旋转,正值为顺时针,负值为逆时针

外层scroll-view设置180度,内层view设置180度就可以实现

<scroll-view scroll-y class="scroll-list"><view class="show-view" v-for="(item,index) in barrageList" :key="index">{{item.content}}</view></scroll-view><style lang="scss" scoped>.scroll-list {position: fixed;top: 700rpx;bottom: 0;transform: rotate(180deg);//主要是这一行跟.show-view中的样式决定从底部更新展示}.show-view {display: flex;align-items: center;justify-content: flex-start;flex-direction: row;padding: 0 5%;transform: rotate(180deg);//主要是这一行跟.scroll-list中的样式决定从底部更新展示}
</style>

以上完成,如果疑问评论区留言即可。

 

http://www.mmbaike.com/news/64221.html

相关文章:

  • 安徽制作网站专业公司珠海百度搜索排名优化
  • 网站域名购买后能修改吗seochan是什么意思
  • 学校网站建设申请报告找培训机构的平台
  • 浙江做网站公司品牌营销的概念
  • 手机网站设计公司立找亿企邦全网搜索引擎
  • 紫色的网站seo快速排名代理
  • 嘉兴 网站建设seo搜索
  • 搜索引擎优化seo的策略主要有软件优化
  • 专业电商网站建设企业推广文案范文
  • 怎么建设网站让国外看网络营销效果评估
  • 搭建公司网站google中文搜索引擎入口
  • 拼团购物网站怎么做太原做网站哪家好
  • 说说版wordpress北京seo排名收费
  • 北京道路优化网站优化服务
  • 服务器网站托管吉林seo技术交流
  • 云主机配置网站十种营销方法
  • 慈溪做网站苏州seo关键词优化价格
  • 成都住房和城乡建设局网站商丘seo教程
  • 网站开发需要多少费用成人短期培训学校
  • 免备案的网站首页网站快速上排名方法
  • 椒江哪里可以做公司网站武汉大学人民医院院长
  • 网站怎么做营销策划优化外包哪里好
  • 苏州网站建设搭建百度度小店申请入口
  • 海南的网站建设公司搜索引擎技巧
  • 东莞小程序建设杭州seo服务公司
  • 做网站维护是什么岗位今日头条新闻在线看
  • 服务中心网站建设意见培训机构营业执照如何办理
  • 福建省建设工程职业注册网站网络营销师官网
  • 无锡外贸网站制作公司北京互联网营销公司
  • 网站开发包括网站的 等过程百度竞价排名怎么靠前