Vue elementUI 应用 $notify 提示信息中换行问题 及 页面锚点至顶部
【摘要】 一、前言在项目开发过程中,遇到如下用户体验提升需求:需要实现错误提示时根据后台返回错误列表信息,换行展示。 二、实现方式通过F12元素查看,在对应的样式中加入white-space:pre-wrap,该样式的主要作用是识别字符串中的换行符"\n",故需要在待展示的信息字符串中加入相应的换行标识符。在$notify消息提示中,作用于el-notification:.el-notificati...
一、前言
在项目开发过程中,遇到如下用户体验提升需求:需要实现错误提示时根据后台返回错误列表信息,换行展示。
二、实现方式
通过F12元素查看,在对应的样式中加入white-space:pre-wrap
,该样式的主要作用是识别字符串中的换行符"\n
",故需要在待展示的信息字符串中加入相应的换行标识符。在$notify
消息提示中,作用于el-notification
:
.el-notification {white-space:pre-wrap !important; }
有的童鞋可能试过样式white-space:pre
,此时会出现的若提示信息内容较长时显示不齐全的问题。即使使用自动换行样式(也无效):
/*设置内容超出后自动换行*/
word-wrap: break-word;
word-break: break-all;
具体区别可参加以下参数部分。
三、拓展阅读
一、应用场景
在vue
项目开发时,发现路由跳转之后,页面默认停留在当前浏览的位置,但是很多时候我们想要的是路由跳转之后,页面重新定位到顶部,下面介绍一下可以实现的方法。
二、方式一
在main.js
中添加代码:
router.afterEach((to, from, next) => {
window.scrollTo(0, 0)
})
三、方式二
如果需要某个页面跳转回顶部,仅需要在当前页面(page)合适的位置加入一下代码即可:
// chrome
document.body.scrollTop = 0
// firefox
document.documentElement.scrollTop = 0
// safari
window.pageYOffset = 0
四、方式三
在路由index.js
中,加入以下代码也可实现路由改变定位到顶部的效果,savedPosition当且仅当通过浏览器的前进/后退按钮触发时才可用,代码如下:
scrollBehavior(to, from, savedPosition) {
if (savedPosition) {
return savedPosition
}
return {
x: 0,
y: 0
}
}
应用以上方法,会发现每次打开页面都是显示的是页面顶部内容,再也不会显示页面底部或者其他位置影响用户体验。
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)