websocket改定时刷新

This commit is contained in:
2024-05-09 10:58:57 +08:00
parent ff4588f7a5
commit 001c59d8de
3 changed files with 57 additions and 57 deletions

View File

@@ -27,55 +27,46 @@
</template> </template>
<script> <script>
import { sendWebsocket, closeWebsocket } from '@/utils/websocket.js' import {getBillsCount} from '@/utils/getData2.js'
export default { export default {
data() { data() {
return { return {
intervalId: null, intervalId: null,
interTime: this.$store.getters.setTime,
userName: this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : '', userName: this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : '',
menuList: [] menuList: []
}; };
}, },
onLoad() { created () {
// setTimeout(() => {
// uni.showLoading({
// title: '加载中...'
// })
// }, 200)
this._getBillsCount() this._getBillsCount()
this.intervalId = setInterval(() => {
this._getBillsCount()
}, this.interTime)
}, },
beforeDestroy () { beforeDestroy () {
closeWebsocket(true) clearInterval(this.intervalId)
clearTimeout(this.intervalId)
this.intervalId = null this.intervalId = null
}, },
destroyed () { destroyed () {
closeWebsocket(true) clearInterval(this.intervalId)
clearTimeout(this.intervalId)
this.intervalId = null this.intervalId = null
}, },
methods: { methods: {
_getBillsCount () { async _getBillsCount () {
let getTimestamp = new Date().getTime() let res = await getBillsCount()
let url = this.$store.getters.baseUrl if (res.code === 1) {
url = url.substring(7) this.menuList = [...res.result]
sendWebsocket('ws://' + url + '/webSocket/SendHomeInfo/' + getTimestamp, {}, this.wsMessage, this.wsErr) } else {
}, uni.showToast({
wsMessage (res) { title: res.desc,
console.log(res) icon: 'none'
clearTimeout(this.intervalId) })
// uni.hideLoading() }
this.menuList = [...res]
},
wsErr () {
this.intervalId = setTimeout(() => {
this._getBillsCount()
}, 10000)
}, },
toPage (e) { toPage (e) {
let url = '' let url = ''
url = '/pages/management/in-storage?id=' + e.djlx + '&name=' + e.name + '&type=' + e.ywlx url = '/pages/management/in-storage?id=' + e.djlx + '&name=' + e.name + '&type=' + e.ywlx
uni.navigateTo({ uni.redirectTo({
url: url url: url
}) })
}, },

View File

@@ -27,46 +27,55 @@
</template> </template>
<script> <script>
import {getBillsCount} from '@/utils/getData2.js' import { sendWebsocket, closeWebsocket } from '@/utils/websocket.js'
export default { export default {
data() { data() {
return { return {
intervalId: null, intervalId: null,
interTime: this.$store.getters.setTime,
userName: this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : '', userName: this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : '',
menuList: [] menuList: []
}; };
}, },
created () { onLoad() {
// setTimeout(() => {
// uni.showLoading({
// title: '加载中...'
// })
// }, 200)
this._getBillsCount() this._getBillsCount()
this.intervalId = setInterval(() => {
this._getBillsCount()
}, this.interTime)
}, },
beforeDestroy () { beforeDestroy () {
clearInterval(this.intervalId) closeWebsocket(true)
clearTimeout(this.intervalId)
this.intervalId = null this.intervalId = null
}, },
destroyed () { destroyed () {
clearInterval(this.intervalId) closeWebsocket(true)
clearTimeout(this.intervalId)
this.intervalId = null this.intervalId = null
}, },
methods: { methods: {
async _getBillsCount () { _getBillsCount () {
let res = await getBillsCount() let getTimestamp = new Date().getTime()
if (res.code === 1) { let url = this.$store.getters.baseUrl
this.menuList = [...res.result] url = url.substring(7)
} else { sendWebsocket('ws://' + url + '/webSocket/SendHomeInfo/' + getTimestamp, {}, this.wsMessage, this.wsErr)
uni.showToast({ },
title: res.desc, wsMessage (res) {
icon: 'none' console.log(res)
}) clearTimeout(this.intervalId)
} // uni.hideLoading()
this.menuList = [...res]
},
wsErr () {
this.intervalId = setTimeout(() => {
this._getBillsCount()
}, 10000)
}, },
toPage (e) { toPage (e) {
let url = '' let url = ''
url = '/pages/management/in-storage?id=' + e.djlx + '&name=' + e.name + '&type=' + e.ywlx url = '/pages/management/in-storage?id=' + e.djlx + '&name=' + e.name + '&type=' + e.ywlx
uni.redirectTo({ uni.navigateTo({
url: url url: url
}) })
}, },

View File

@@ -43,12 +43,12 @@
<input type="text" placeholder="域名地址" v-model.trim="baseUrl" class="inputStyle"> <input type="text" placeholder="域名地址" v-model.trim="baseUrl" class="inputStyle">
</view> </view>
</view> </view>
<!-- <view class="zd-row mgb20"> <view class="zd-row mgb20">
<view class="zd-col-7 login_label">刷新时间(s)</view> <view class="zd-col-7 login_label">刷新时间(s)</view>
<view class="zd-col-17"> <view class="zd-col-17">
<input type="number" placeholder="刷新时间" v-model.trim="setTime" class="inputStyle"> <input type="number" placeholder="刷新时间" v-model.trim="setTime" class="inputStyle">
</view> </view>
</view> --> </view>
</view> </view>
<view class="zd-row mgt20 mgb20"> <view class="zd-row mgt20 mgb20">
<button class="primary-button" :disabled="disabled" @tap="toConfig">&nbsp;&nbsp;</button> <button class="primary-button" :disabled="disabled" @tap="toConfig">&nbsp;&nbsp;</button>