国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Vue 解決在element中使用$notify在提示信息中換行問題

瀏覽:5日期:2022-11-01 14:22:28

在項目開發過程中,遇到如下用戶體驗提升需求:需要實現錯誤提示時根據后臺返回錯誤列表信息,換行展示。

實現方式如下:

通過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 解決在element中使用$notify在提示信息中換行問題

Vue 解決在element中使用$notify在提示信息中換行問題

Vue 解決在element中使用$notify在提示信息中換行問題

補充知識:關于vue ts項目同時引入element-ui和ant-design,ts報錯不能編譯的解決方法。

vue ts版本同時引入ant和element不能打包。

Subsequent property declarations must have the same type. Property ‘$confirm’ must be of type ‘(modalOptios: ModalOptions) => ModalConfirm’, but here has type ‘ElMessageBoxShortcutMethod’.

Subsequent property declarations must have the same type. Property ‘$message’ must be of type ‘Message’, but here has type ‘ElMessage’.

通常vue項目只會用到一個ui庫,但是往往會有一些特殊場景一個ui庫不滿足我們業務場景,我工作中使用到了ant-design-vue(全局引入)和element-ui(按需加載),同時項目是ts版本。

Vue 解決在element中使用$notify在提示信息中換行問題

elemt,ant ts報錯

我搜索了很多的解決方案,都不符合,我發現它爆錯的地方是兩個的類型描述文件沖突了,這時候我把node_modules/element-ui/types/message-box.d.ts 和 node_modules/element-ui/types/message.d.ts 相關地方注釋后再打包果然不報錯了。

Vue 解決在element中使用$notify在提示信息中換行問題

Vue 解決在element中使用$notify在提示信息中換行問題

既然能通過注釋的方式解決打包的問題,但是我們不能每次都去注釋一次,這時候馬上想到node的 fs包能幫我友好解決這個問題。

解決方案:

在項目根目錄創建 config文件夾、os.js文件

Vue 解決在element中使用$notify在提示信息中換行問題

編寫os.js文件,如下

/** * 這個文件在這是為了解決同時引入element-ui / ant-design ts 爆粗哦, * 解決版本把node_modules 相關文件注釋了 * */let fs = require(’fs’)let path = require(’path’)let src1 = ’../node_modules/element-ui/types/message.d.ts’annotation(src1, ’$message: ElMessage’)let src2 = ’../node_modules/element-ui/types/message-box.d.ts’annotation(src2, ’$confirm: ElMessageBoxShortcutMethod’)function annotation(src, params) { fs.readFile(path.resolve(__dirname, src), ’utf8’, function(err, files) { if (!err && files !== ’’) { let val = params let has = `// ${params}` let start = files.indexOf(val) let start2 = files.indexOf(has) if (start > -1 && start2 === -1) {var result = files.replace(val, has)fs.writeFile( path.resolve(__dirname, src), result, ’utf8’, function(err) { if (err) { console.log(err) } })console.log(params + ’ 注釋成功!’) } else {console.log(’沒有需要注釋對或者已經注釋了!’) } } else { console.log(params + ’ 沒有需要注釋對或者已經注釋了或者注釋文件失?。 ? ) } })}

原來的命令,我們只需要修改build部分

編寫package.json運行命令,把我們編寫的os.js加入到運行命令

'scripts': { 'build': 'node config/os.js&vue-cli-service build' },

現在運行npm run build

Vue 解決在element中使用$notify在提示信息中換行問題

大功告成!

以上這篇Vue 解決在element中使用$notify在提示信息中換行問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 91人碰| 寡妇一级a毛片免费播放 | 欧美日韩一区二区三区视视频 | 亚洲伊人色 | 国产精品7m凸凹视频分类大全 | www.亚洲黄色 | 免费一级毛片无毒不卡 | 美女网站免费观看视频 | 黑人一级大毛片 | 全部免费的毛片在线看美国 | 好吊色37pao在线观看 | 在线欧美成人 | 人成在线免费视频 | 国产99精品一区二区三区免费 | 在线はじめてのおるすばん | 99成人在线视频 | 最新国产三级在线观看不卡 | 久草国产在线观看 | 亚洲第一视频在线观看 | 加勒比日本道 | 亚洲视频中文字幕在线观看 | 老师张开腿让我爽了一夜视频 | 99在线看| 欧美性毛片大片 | 亚洲精品国产福利片 | 久久精品国产亚洲aa | xx欧美老妇 | a级毛片免费高清毛片视频 a级毛片免费高清视频 | 亚洲a级片在线观看 | 成人免费在线播放视频 | 欧美a级毛片免费播敢 | 国产精品极品美女自在线看免费一区二区 | 国产精品分类视频分类一区 | 6一12呦女精品 | 久久久久在线视频 | 国产成在线观看免费视频 | 亚洲一区二区三区四区 | 99久久精品免费看国产四区 | 手机在线观看一级午夜片 | 厕拍精品 | 久久精品网站免费观看 |