diff --git a/Yi.Bbs.Vue3/src/apis/settingApi.js b/Yi.Bbs.Vue3/src/apis/settingApi.js new file mode 100644 index 00000000..32ed6416 --- /dev/null +++ b/Yi.Bbs.Vue3/src/apis/settingApi.js @@ -0,0 +1,11 @@ +import request from "@/config/axios/service"; + +/** + * 获取图标列表 + */ +export function getIconList() { + return request({ + url: `/setting/icon`, + method: "get", + }); +} diff --git a/Yi.Bbs.Vue3/src/assets/common/icons/gitee.png b/Yi.Bbs.Vue3/src/assets/common/icons/gitee.png new file mode 100644 index 00000000..81d9e627 Binary files /dev/null and b/Yi.Bbs.Vue3/src/assets/common/icons/gitee.png differ diff --git a/Yi.Bbs.Vue3/src/assets/styles/index.scss b/Yi.Bbs.Vue3/src/assets/styles/index.scss index f9d0a723..00ec06f6 100644 --- a/Yi.Bbs.Vue3/src/assets/styles/index.scss +++ b/Yi.Bbs.Vue3/src/assets/styles/index.scss @@ -1,190 +1,194 @@ -// @import './variables.module.scss'; -// @import './mixin.scss'; -// @import './transition.scss'; -// @import './element-ui.scss'; -// @import './sidebar.scss'; -// @import './btn.scss'; -// @import './ruoyi.scss'; - -// body { -// height: 100%; -// margin: 0; -// -moz-osx-font-smoothing: grayscale; -// -webkit-font-smoothing: antialiased; -// text-rendering: optimizeLegibility; -// font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial, sans-serif; -// } - -// label { -// font-weight: 700; -// } - -// html { -// height: 100%; -// box-sizing: border-box; -// } - -// #app { -// height: 100%; -// } - -// *, -// *:before, -// *:after { -// box-sizing: inherit; -// } - -// .no-padding { -// padding: 0px !important; -// } - -// .padding-content { -// padding: 4px 0; -// } - -// a:focus, -// a:active { -// outline: none; -// } - -// a, -// a:focus, -// a:hover { -// cursor: pointer; -// color: inherit; -// text-decoration: none; -// } - -// div:focus { -// outline: none; -// } - -// .fr { -// float: right; -// } - -// .fl { -// float: left; -// } - -// .pr-5 { -// padding-right: 5px; -// } - -// .pl-5 { -// padding-left: 5px; -// } - -// .block { -// display: block; -// } - -// .pointer { -// cursor: pointer; -// } - -// .inlineBlock { -// display: block; -// } - -// .clearfix { -// &:after { -// visibility: hidden; -// display: block; -// font-size: 0; -// content: " "; -// clear: both; -// height: 0; -// } -// } - -// aside { -// background: #eef1f6; -// padding: 8px 24px; -// margin-bottom: 20px; -// border-radius: 2px; -// display: block; -// line-height: 32px; -// font-size: 16px; -// font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; -// color: #2c3e50; -// -webkit-font-smoothing: antialiased; -// -moz-osx-font-smoothing: grayscale; - -// a { -// color: #337ab7; -// cursor: pointer; - -// &:hover { -// color: rgb(32, 160, 255); -// } -// } -// } - - - -// .components-container { -// margin: 30px 50px; -// position: relative; -// } - -// .pagination-container { -// margin-top: 30px; -// } - -.text-center { - text-align: center +/** + * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/) + * http://cssreset.com + * 全局初始化样式 + */ +html, +body, +div, +span, +applet, +object, +iframe, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +big, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +b, +u, +i, +center, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +embed, +figure, +figcaption, +footer, +header, +menu, +nav, +output, +ruby, +section, +summary, +time, +mark, +audio, +video, +input { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font-weight: normal; + vertical-align: baseline; + outline: none; } -// .sub-navbar { -// height: 50px; -// line-height: 50px; -// position: relative; -// width: 100%; -// text-align: right; -// padding-right: 20px; -// transition: 600ms ease position; -// background: linear-gradient(90deg, rgba(32, 182, 249, 1) 0%, rgba(32, 182, 249, 1) 0%, rgba(33, 120, 241, 1) 100%, rgba(33, 120, 241, 1) 100%); +body { + /* px-to-viewport-ignore-next */ + min-width: 1024px; /* px-to-viewport-ignore */ +} +html { + /* px-to-viewport-ignore-next */ + min-width: 1024px; /* px-to-viewport-ignore */ +} -// .subtitle { -// font-size: 20px; -// color: #fff; -// } +/* HTML5 display-role reset for older browsers */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +menu, +nav, +section { + display: block; +} -// &.draft { -// background: #d0d0d0; -// } +blockquote, +q { + quotes: none; +} -// &.deleted { -// background: #d0d0d0; -// } -// } +blockquote::before, +blockquote::after, +q::before, +q::after { + content: none; +} -// .link-type, -// .link-type:focus { -// color: #337ab7; -// cursor: pointer; +table { + border-collapse: collapse; + border-spacing: 0; +} -// &:hover { -// color: rgb(32, 160, 255); -// } -// } +/* custom */ +li { + list-style: none; +} -// .filter-container { -// padding-bottom: 10px; +button { + outline: none; + cursor: pointer; + background-color: transparent; + border-style: none; +} -// .filter-item { -// display: inline-block; -// vertical-align: middle; -// margin-bottom: 10px; -// } -// } +.el-textarea__inner::placeholder { + color: #999 !important; +} -// //refine vue-multiselect plugin -// .multiselect { -// line-height: 16px; -// } +.el-input__inner::placeholder { + color: #999 !important; +} -// .multiselect--active { -// z-index: 1000 !important; -// } +input::-webkit-input-placeholder { + color: #999 !important; +} + +.el-input__inner::-webkit-input-placeholder { + color: #999 !important; +} + +input::placeholder { + color: #999 !important; +} + +textarea::placeholder { + color: #999 !important; +} + +* { + box-sizing: border-box; +} +html, +body, +#app { + width: 100%; + height: 100%; + font-family: Microsoft YaHei, Helvetica Neue, Helvetica, Arial, sans-serif, + Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbo; +} + +/* //滚动条样式 */ +::-webkit-scrollbar { + width: 10px; + height: 10px; +} +/* 滚动槽 */ +::-webkit-scrollbar-track { + border-radius: 10px; +} +/* 滚动条滑块 */ +::-webkit-scrollbar-thumb { + border-radius: 10px; + background: #ccc; +} +::-webkit-scrollbar-thumb:window-inactive { + background: rgba(249, 222, 222, 0.6); +} diff --git a/Yi.Bbs.Vue3/src/components/AvatarInfo.vue b/Yi.Bbs.Vue3/src/components/AvatarInfo.vue index cb8ff657..cb072c42 100644 --- a/Yi.Bbs.Vue3/src/components/AvatarInfo.vue +++ b/Yi.Bbs.Vue3/src/components/AvatarInfo.vue @@ -117,17 +117,17 @@ const Init = () => { const statusTypeList = [ { label: "正常", - value: 0, + value: "Normal", type: "success", }, { label: "危险", - value: 1, + value: "Dangerous", type: "warning", }, { label: "已禁止", - value: 2, + value: "Ban", type: "danger", }, ]; diff --git a/Yi.Bbs.Vue3/src/components/BottomInfo.vue b/Yi.Bbs.Vue3/src/components/BottomInfo.vue index 79edfa8b..51d9e4ca 100644 --- a/Yi.Bbs.Vue3/src/components/BottomInfo.vue +++ b/Yi.Bbs.Vue3/src/components/BottomInfo.vue @@ -1,38 +1,59 @@ \ No newline at end of file + diff --git a/Yi.Bbs.Vue3/src/layout/AppHeader.vue b/Yi.Bbs.Vue3/src/layout/AppHeader.vue index 0a0d1daf..b5fed689 100644 --- a/Yi.Bbs.Vue3/src/layout/AppHeader.vue +++ b/Yi.Bbs.Vue3/src/layout/AppHeader.vue @@ -63,6 +63,11 @@ +
+ + + +
@@ -119,19 +124,33 @@ const search = () => { }; const isLogin = getToken("AccessToken") ? true : false; + +const handleGitClick = () => { + window.open("https://gitee.com/ccnetcore/Yi"); +}; diff --git a/Yi.Bbs.Vue3/src/views/profile/UserAvatar.vue b/Yi.Bbs.Vue3/src/views/profile/UserAvatar.vue index b9cf5781..ccfd6299 100644 --- a/Yi.Bbs.Vue3/src/views/profile/UserAvatar.vue +++ b/Yi.Bbs.Vue3/src/views/profile/UserAvatar.vue @@ -1,12 +1,28 @@ - - \ No newline at end of file + +/* 添加选中图片的边框样式 */ +.imageBox { + margin: 10px; +} +.selected { + padding: 5px; + border: 2px solid #40a9ff; +} +