首页 / VUE / 自动刷新实现,vuex状态绑定
自动刷新实现,vuex状态绑定
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了自动刷新实现,vuex状态绑定,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1509字,纯文字阅读大概需要3分钟。
内容图文
![自动刷新实现,vuex状态绑定](/upload/InfoBanner/zyjiaocheng/1017/dda4b9bbb0a34b2f927fd0704544ba35.jpg)
js 每5分钟刷新一次
通过el-switch 来控制是否启用自动更新
el-switch 通过 v-model 来绑定 store中的状态
computed: {
autoRefresh: {
get() {
return this.$store.state.dmx.mvAutoRefresh
},
set(value) {
this.$store.dispatch('dmx/setAutoRefresh', value)
}
},
dmxTimer() {
return this.$store.state.dmx.dmxTimer
}
}
切换至其他页面时,清除自动刷新,进入时 再根据 autoRefresh 来判断是否加上定时刷新
beforeDestroy() {
clearInterval(this.dmxTimer)
this.$store.dispatch('dmx/clearDmxTimer')
},
mounted() {
this.autoRefreshHandler()
},
methods: {
dmxtest() {
console.log((new Date()) + '----')
},
autoRefreshHandler() {
/** 定时器 **/
if (this.autoRefresh) {
if (this.dmxTimer == null) {
const tmpDmxTimer = setInterval(this.dmxtest, this.dmxTimeout)
this.$store.dispatch('dmx/setDmxTimer', tmpDmxTimer)
}
} else {
if (this.dmxTimer != null) {
clearInterval(this.dmxTimer)
this.$store.dispatch('dmx/clearDmxTimer')
}
}
}
}
dmx.js
// import Cookies from 'js-cookie'
const state = {
// 首页是否自动刷新
mvAutoRefresh: true,
message: 'xxx',
dmxTimer: null
}
const mutations = {
setAutoRefresh: (state, val) => {
state.mvAutoRefresh = val
},
updateMessage: (state, val) => {
state.message = val
},
clearDmxTimer: (state) => {
state.dmxTimer = null
},
setDmxTimer: (state, val) => {
state.dmxTimer = val
}
}
const actions = {
setAutoRefresh: (context, val) => {
context.commit('setAutoRefresh', val)
},
clearDmxTimer: (context) => {
context.commit('clearDmxTimer')
},
setDmxTimer: (context, val) => {
context.commit('setDmxTimer', val)
}
}
export default {
namespaced: true,
state,
mutations,
actions
}
内容总结
以上是互联网集市为您收集整理的自动刷新实现,vuex状态绑定全部内容,希望文章能够帮你解决自动刷新实现,vuex状态绑定所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。