[unisocket.js] reconnecting 时发送 _passtoken 给服务器; [index.js] 优化 setBarTitles 使得调用时 call(this 可用也可不用。
This commit is contained in:
parent
c5d5b2d4e6
commit
a750520d19
7
index.js
7
index.js
@ -96,11 +96,12 @@ module.exports = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
setBarTitles({windowTitle, pageTitle}={}){
|
setBarTitles({windowTitle, pageTitle}={}){
|
||||||
uni.setNavigationBarTitle({ title: pageTitle || this.localeText.tPageTitle })
|
let page = this.$store ? this : getCurrentPages().pop()
|
||||||
|
uni.setNavigationBarTitle({ title: pageTitle || page.localeText.tPageTitle || page.i18nText[page.$store.i18n.activeLang].tPageTitle })
|
||||||
// #ifdef H5
|
// #ifdef H5
|
||||||
document.title = windowTitle || this.appName || this.$store.getters['i18n/getAppName'] // 必须放在 setNavigationBarTitle 之后,否则会被其覆盖掉。
|
document.title = windowTitle || page.appName || page.$store.getters['i18n/getAppName'] // 必须放在 setNavigationBarTitle 之后,否则会被其覆盖掉。
|
||||||
// #endif
|
// #endif
|
||||||
this.$store.commit('i18n/setTabbar') // 必须要在有 tab 的页面里重置才能成功
|
page.$store.commit('i18n/setTabbar') // 必须要在有 tab 的页面里重置才能成功
|
||||||
},
|
},
|
||||||
|
|
||||||
formatMoney(value, decimal){
|
formatMoney(value, decimal){
|
||||||
|
@ -5,7 +5,7 @@ const my = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
module.exports={
|
module.exports={
|
||||||
initSocket(url){
|
initSocket(url, reconnect=false){
|
||||||
if (!my.socket || my.socket.readyState!==my.socket.OPEN && typeof(url)==='string') {
|
if (!my.socket || my.socket.readyState!==my.socket.OPEN && typeof(url)==='string') {
|
||||||
console.log('WebSocket connecting...')
|
console.log('WebSocket connecting...')
|
||||||
my.socket = uni.connectSocket({
|
my.socket = uni.connectSocket({
|
||||||
@ -16,13 +16,19 @@ module.exports={
|
|||||||
console.log('WebSocket onOpen: ', res)
|
console.log('WebSocket onOpen: ', res)
|
||||||
clearInterval(my.reconnecting)
|
clearInterval(my.reconnecting)
|
||||||
delete my.reconnecting
|
delete my.reconnecting
|
||||||
|
|
||||||
|
if (reconnect && uni.getStorageSync('_passtoken')) {
|
||||||
|
console.log('Reporting owner for reconnecting socket')
|
||||||
|
my.socket.send({data: JSON.stringify({skevent:'SOCKET_OWNER', _passtoken: uni.getStorageSync('_passtoken')})})
|
||||||
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
my.socket.onClose((res)=>{
|
my.socket.onClose((res)=>{
|
||||||
console.log('Websocket onClose: ', res)
|
console.log('Websocket onClose: ', res)
|
||||||
if (!my.reconnecting)
|
if (!my.reconnecting)
|
||||||
my.reconnecting = setInterval(()=>{
|
my.reconnecting = setInterval(()=>{
|
||||||
console.log(new Date().toJSON(), 'WebSocket reconnecting...')
|
console.log(new Date().toJSON(), 'WebSocket reconnecting...')
|
||||||
this.initSocket(url)
|
this.initSocket(url, true)
|
||||||
}, 5000) // 每5秒尝试重连
|
}, 5000) // 每5秒尝试重连
|
||||||
})
|
})
|
||||||
my.socket.onError((err)=>{
|
my.socket.onError((err)=>{
|
||||||
@ -60,12 +66,11 @@ module.exports={
|
|||||||
}
|
}
|
||||||
return this
|
return this
|
||||||
},
|
},
|
||||||
sendObject(data){
|
sendObject(dataObj){
|
||||||
if (typeof(data)!=='string'){
|
|
||||||
data=JSON.stringify(data)
|
|
||||||
}
|
|
||||||
if (my.socket && my.socket.readyState===my.socket.OPEN){
|
if (my.socket && my.socket.readyState===my.socket.OPEN){
|
||||||
my.socket.send({data})
|
my.socket.send({
|
||||||
|
data: typeof(dataObj)!=='string' ? JSON.stringify(dataObj) : dataObj
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user