vue项目中用element ui组件的pagination组件,当手动刷新页面时当前页会回到默认选中效果,一般会回到第一页,如何刷新时让记住刷新前的页面,让刷新后的页面不变呢?

做状态的本地存储,通过在localstorage中保存你的页码信息,在页面组件初始化的时候获取本地存储的信息,进而初始化,以达到你要的刷新保留状态的目的。
注意

1.vue中vue中刷新页面,会导致组件状态初始化,要记录刷新前的状态,可将刷新前需要存储在本地存储里面
2.localStorage 存取数据是以字符串的形式存取的
3.注意current-page的属性值的类型是Number类型的,而非字符串

html:

    <script >
	export default {
		data() {
			return {
				total: 100,
				pageSize: 5,
				pageNo: 1,
			}
		},

		created() {
			this.pageNo = Number(localStorage.getItem('pagination')) || 1;
			this.pageChange(this.pageNo);
		},

		beforeUpdate() {
			localStorage.setItem('pagination', this.pageNo);
		},

		beforeDestroy() {
			localStorage.setItem('pagination', '1');
		},

		methods: {
			pageChange(pageNo) {
				this.loading = true;
				this.pageNo = pageNo;
			}
		}

	}

	</script>

Logo

前往低代码交流专区

更多推荐