diff --git a/src/assets/font/iconfont.css b/src/assets/font/iconfont.css index 6627fcd9..a1c4bab5 100644 --- a/src/assets/font/iconfont.css +++ b/src/assets/font/iconfont.css @@ -1,8 +1,8 @@ @font-face { font-family: "iconfont"; /* Project id 5086622 */ - src: url("iconfont.woff2?t=1765507086795") format("woff2"), - url("iconfont.woff?t=1765507086795") format("woff"), - url("iconfont.ttf?t=1765507086795") format("truetype"); + src: url("iconfont.woff2?t=1765533102668") format("woff2"), + url("iconfont.woff?t=1765533102668") format("woff"), + url("iconfont.ttf?t=1765533102668") format("truetype"); } .iconfont { @@ -11,8 +11,18 @@ font-style: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; - color: #b5b5b5; - display: inline-table; +} + +.icon-checked:before { + content: "\e70f"; +} + +.icon-warning:before { + content: "\e88f"; +} + +.icon-close:before { + content: "\e604"; } .icon-delete:before { diff --git a/src/assets/font/iconfont.ttf b/src/assets/font/iconfont.ttf index 32988d9d..7544644e 100644 Binary files a/src/assets/font/iconfont.ttf and b/src/assets/font/iconfont.ttf differ diff --git a/src/assets/font/iconfont.woff b/src/assets/font/iconfont.woff index 031afb56..c170a2ce 100644 Binary files a/src/assets/font/iconfont.woff and b/src/assets/font/iconfont.woff differ diff --git a/src/assets/font/iconfont.woff2 b/src/assets/font/iconfont.woff2 index 6e1ab6a2..33dd1d44 100644 Binary files a/src/assets/font/iconfont.woff2 and b/src/assets/font/iconfont.woff2 differ diff --git a/src/assets/scss/common.scss b/src/assets/scss/common.scss index b39d8146..315a6b47 100644 --- a/src/assets/scss/common.scss +++ b/src/assets/scss/common.scss @@ -872,7 +872,15 @@ textarea { .pst-s { position: sticky; } - +.colorR { + color: #cf1717; +} +.colorG { + color: #44bb00; +} +.colorY { + color: #facd91; +} .el-dialog { border-radius: 12px; .el-dialog__header { diff --git a/src/hooks/useUpload.js b/src/hooks/useUpload.js index a4678d5f..406ca123 100644 --- a/src/hooks/useUpload.js +++ b/src/hooks/useUpload.js @@ -53,13 +53,13 @@ export function useUpload() { // 上传前检查 const beforeUpload = (file) => { - const isJpgOrPng = file.type === "image/jpg" || file.type === "image/png"; + const isJpgOrPng = file.type === "image/jpeg" || file.type === "image/png"; if (!isJpgOrPng) { - $message.error("You can only upload JPG file!"); + $message.error("请上传正确的图片格式"); } const isLt2M = file.size / 1024 / 1024 < 2; if (!isLt2M) { - $message.error("Image must smaller than 2MB!"); + $message.error("图片大小应小于2MB"); } if (isJpgOrPng && isLt2M) { diff --git a/src/utils/useMessage.js b/src/utils/useMessage.js index bedbbbe7..d4b1bacf 100644 --- a/src/utils/useMessage.js +++ b/src/utils/useMessage.js @@ -1,6 +1,6 @@ // utils/message.ts -import { ElMessage } from "element-plus"; - +import { ElMessage, ElMessageBox } from "element-plus"; +import { h, ref } from "vue"; const DEFAULT_OPTIONS = { duration: 5000, offset: 270, @@ -15,3 +15,33 @@ export const $message = { info: (msg) => ElMessage.info({ message: msg, ...DEFAULT_OPTIONS }), custom: (config) => ElMessage({ ...DEFAULT_OPTIONS, ...config }), }; + +const getMessageTypeFun = (type) => { + switch (type) { + case "success": + return "icon-checked colorG"; + case "warning": + return "icon-warning colorY"; + case "error": + return "icon-warning colorR"; + case "info": + return "icon-warning colorD"; + default: + return "icon-warning colorY"; + } +}; + +export const $messageBox = { + confirm: (msg, title = "提示", obj) => + ElMessageBox.confirm(msg, { + confirmButtonText: obj.confirmButtonText, + cancelButtonText: obj.cancelButtonText, + title: title, + message: h("p", null, [ + h("i", { + class: `iconfont ${getMessageTypeFun(obj.type)} mr10 fs18`, + }), + h("span", null, msg), + ]), + }), +}; diff --git a/src/views/courselibrary/components/createCourse.vue b/src/views/courselibrary/components/createCourse.vue index 5d3793da..244bab05 100644 --- a/src/views/courselibrary/components/createCourse.vue +++ b/src/views/courselibrary/components/createCourse.vue @@ -1,7 +1,7 @@