当前位置:   article > 正文

踩坑记20 element-plus 默认语言设置 | el-pagination 分页器自动换行 | vue-router Maximum call stack size exceeded_unexpected error when starting the router: error:

unexpected error when starting the router: error: infinite redirect in navig

2021.9.6

坑64(element-plus、语言配置):element-plus默认语言是英文。而目标是配置语言为中文。参考文档 组件 | Element (element-plus.org) 国际化,可以很快配置完成,代码如下:

  1. // main.js
  2. import ElementPlus from 'element-plus'
  3. import zhCn from 'element-plus/es/locale/lang/zh-cn'
  4. app.use(ElementPlus, { locale: zhCn, })

此外还可以使用el-config-provider组件进行配置,方法见文档:

组件 | Element (element-plus.org)   Config Provider 配置

坑65(el-pagination、分页器自动换行):查看页面元素可发现el-pagination设置了white-space: nowrap,使其内部元素不自动换行。所以设置css使其换行即可,代码如下:

  1. .el-pagination {
  2.     white-space: normal !important;
  3. }

参考: white-space - CSS(层叠样式表) | MDN (mozilla.org)

踩坑:开始以为是行内元素和块元素设置导致未自动换行,后排查发现el-pagination是block,内部需换行的元素是inline-block,是符合换行需求的。之后才找到是white-space导致。

参考:css+div横向排列自动换行 - Kaiqisan_Kaiqisan的博客-CSDN博客_div横向排列自动换行

总结---块级元素+行内块元素自动换行(非flex布局)排查

1、注意元素display设置,自动换行需要父元素display: block子元素display: inline-block

2、注意父元素的white-space设置,normal、pre-wrap、pre-line、break-spaces填充行型盒子时换行,nowrap、pre填充行型盒子时不换行。

坑66(vue-router、Maximum call stack size exceeded、404、name重复):在地址栏输入本该跳转到404的页面时,vue-router提示超出最大调用栈堆的大小,如下:

[Vue Router warn]: Unexpected error when starting the router: RangeError: Maximum call stack size exceeded

    at Object.resolve

    ......

经排查,发现原因是静态路由和动态路由重复使用了404这一名称。路由文件中配置的静态路由404,只匹配/404这一路径。而在添加动态路由时,在最后设置通用匹配,将其他未匹配成功的路径都重定向到404页面。此时也使用了'404'这一名称,将其修改为其他不重复名称或直接去掉名称即可,代码如下:

  1. // router/index.js
  2. // 路由文件中配置的静态路由404,只匹配/404这一路径
  3. {
  4.     path:'/404',
  5.     name:'404',
  6.     component:()=>import('@/views/404.vue'),
  7. }
  8. // store/action.js
  9. //  获取动态路由时,最后设置通用匹配,将其他未匹配成功的路径都重定向到404页面
  10. {
  11.     path: '/:pathMatch(.*)*',
  12.     name: 'other'// 修改前:name: '404',
  13.     redirect: '/404'
  14. }

by 莫得感情踩坑机(限定)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/119134?site
推荐阅读
相关标签
  

闽ICP备14008679号