Browse Source

加入路由拦截器并判断参数为number类型时候的长度

master
蟑螂恶霸 3 years ago
parent
commit
4ea86a1de7
  1. 31
      src/common/globalRouter.js
  2. 28
      src/components/carousel-card/index.vue

31
src/common/globalRouter.js

@ -22,4 +22,35 @@ const $globalRouter = createRouter({
$globalExpandRouter($globalRouter, routes); // 添加路由扩展
$globalRouter.beforeEach((to, from, next) => {
// 在这里进行身份验证、权限检查等
// ...
if (null != to.query) {
for (let key in to.query) {
if (typeof to.query[key] === 'number' && !Number.isNaN(to.query[key])) {
if (to.query[key].toString().length > 9) {
to.query[key] = 0;
console.log(to.query[key]);
}
}
}
}
if (null != to.params) {
for (let key in to.params) {
if (typeof to.params[key] === 'number' && !Number.isNaN(to.params[key])) {
if (to.params[key].toString().length > 9) {
to.params[key] = 0;
console.log(to.params[key]);
}
}
}
}
// 必须调用next()来resolve这个钩子。
// 可以传递'next()'、'next(false)'或者'next("/path")'来控制路由
next(); // 允许路由继续
// next(false); // 中断路由,并且不跳转到任何地方
// next("/path"); // 中断路由,并跳转到指定的路径
});
export { $globalRouter };

28
src/components/carousel-card/index.vue

@ -1,16 +1,16 @@
<template>
<div class="carousel">
<van-swipe :autoplay="3000" lazy-render >
<van-swipe-item v-for="(image, index) in data?.images" :key="index">
<img class="img-box" :src="image?.img" />
</van-swipe-item>
</van-swipe>
</div>
</template>
<script setup name="carousel">
<div class="carousel">
<van-swipe :autoplay="3000" lazy-render >
<van-swipe-item v-for="(image, index) in data?.images" :key="index">
<img class="img-box" :src="image?.img" />
</van-swipe-item>
</van-swipe>
</div>
</template>
<script setup name="carousel">
const props = defineProps({
carouselList: {
type: Array,
@ -22,8 +22,8 @@
const data = reactive({
images: props?.carouselList,
});
</script>
<style lang="less">
</script>
<style lang="less">
.carousel {
height: 150px;
.van-swipe{
@ -34,4 +34,4 @@
height: 100%;
}
}
</style>
</style>
Loading…
Cancel
Save