From b16b5893c8b21ff702bc1cd8a35462ea924936c1 Mon Sep 17 00:00:00 2001 From: iczer <1126263215@qq.com> Date: Tue, 23 Jun 2020 14:22:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=A2=9E=E5=8A=A0=E5=9B=BD=E9=99=85=E5=8C=96?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E6=94=AF=E6=8C=81=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/favicon.ico | Bin 3039 -> 2913 bytes src/assets/img/logo.png | Bin 6885 -> 26705 bytes src/assets/img/vue-antd-logo.png | Bin 24587 -> 0 bytes src/components/menu/SiderMenu.vue | 3 +- src/components/menu/menu.js | 146 ++++++++++++++++++++---------- src/config/index.js | 1 + src/layouts/GlobalHeader.vue | 26 +++++- src/layouts/GlobalLayout.vue | 1 + src/layouts/HeaderSearch.vue | 4 +- src/pages/login/Login.vue | 2 +- src/router/i18n.js | 48 ++++++++++ src/router/lazy.js | 108 ++++++++++------------ src/store/modules/account.js | 4 +- src/store/modules/setting.js | 3 + src/theme/default/color.less | 14 +++ src/utils/Objects.js | 24 +++++ src/utils/utils.less | 48 ---------- 17 files changed, 267 insertions(+), 165 deletions(-) delete mode 100644 src/assets/img/vue-antd-logo.png create mode 100644 src/router/i18n.js create mode 100644 src/utils/Objects.js delete mode 100644 src/utils/utils.less diff --git a/public/favicon.ico b/public/favicon.ico index 91789c889cc535e85b32a34bbd08143a00d58488..47bf70b9def4bdda7fd3cb9fdbba9e794c2bfb7f 100644 GIT binary patch literal 2913 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 diff --git a/src/assets/img/logo.png b/src/assets/img/logo.png index ce0f22da16a0d6ee6830e72203a0d06344e72549..62bfe39aaad240dc0daa7dd5f48a80d1feedc002 100644 GIT binary patch literal 26705 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Ú)iw@EROzI;@MB?O80_sB- zQX?6B(7{E~VW6ro_knQ>!4amYQC|%8kxw74+DAsQAfO2+wI)N@V&+4)GmpdsYBk}I zw4PuZv$I9g_OVgv+(!;kgQi0?n9dW7;)LL3aKh{@Hb4Rz(Uw|h3lSZ%@i1Y+Z4D&R zXBagYEJ=n*@WB&Y9Nh-vlY~WAHHQtG;77&@1YGWq`!M6_{zhuBCJmktp_XSKU%>WF z+~!vwkr)Of&}o>}Sv@*7N`!^i?A*d}Ov@B}m1 zI)il^hFSbLb88IKURVTkZ+jjI$xV4F^I%E@!J#cnd+;y{IGAR%V5fu=G!CKpl&18f zto(2$B_Aft1k1$+YZ%K6)=|-FefT3xI++_SiJyq@A^=wOuwf!XJk*X2jt~o*8jzek z1O#Hz@*PI^VS{zv1{*_PmJ`%dgJYtr#kh7K8=}jwpLiq^rt`3v+^@W%)_8RtfD39` z4)X&O#s>$_AoZ|ehBUsa+q@kuFgV3?*iSq}WY}Op0EY2{Ul}GEh9gM`-SMyBfzk1_ zp*w6mtT52?6-f&R4vi1|uw0T8r@=7ZPuh5{@ydAZff=DHexjk57Db2NVxEuSoUr?YO zvm$W)#KJBp(pvJk_~Q-HE2gzI!sz&z$M{zwSn8y<#}6}4nTOdetmSKmT@1}DKamJW zq;>1@<68@hBpUz9Q?I&(s&xQr#MNj`GMxAmhvF)|5{w~=9Bo~$FEdMbczJ#rqMBPb)E3fQ>sPYhCz$ViGTX{hl? z^dUaM7!0r(NkvD>W1cB&>XN`n>JDc;BS>_d=WMw8NGvu|tB#yE&rhQE!ID1#$#+pA z$Tts)wPqnpCI}6|hykJ!l60I010)9}R7Y`Xbd~z|J2_BGoyCPgL+LUR>f8kI2juHX}EW5fD9*Jt z6|JB2zxpapg-rS4^Ykq)5dIh$bf$roPMfr06gH!PxHZ5NW-s=AB&y|}T7&`4apk&Hlc)CT>US3KF8=iWb^kADN?2fu#O{@T|a z#f#r@hZMTQf9P8?ITXLl<;mjFq-b7>*Bz1f9d|sLvW)rvr2Lm25$Hvco)m~Xf@Cz_ zVaihcCk>Q!?zqEwQEc-l9$7TSfSKo$cO+34H&?WNQvR!m6o2wb)7rIU?+&l*Cv{*r ze1`)lUOW(RNJNU^C$0IUpD`Qaj3>F24cI1k{KVs{URqBEsiE1E(*H^6c*m0lMKZ^9 zebVeyH?*7$3{ToCir16oX{X4YebJv(|4JZt-0}b2VQNdjC#@^>gRD;miSKxlgSg!h zrto2ozQX_CUfJWg%0ppz1G52dfEJ0CMNp?ea$$*vDs5Kcwa_se`_8}3=uUni8GSlu z5@R2mT;1o%OXl*4Dlf}t^TzB#u9h;KXXKXWO!$PQpodGI%@4jaslj_@Q8814iHo7H zoMpFi;y!K($%y-_Caa+7l5zMF-s(zDv#R^bd~nu(0nR$}TSh1p@`cZt zEl^yB}dCWFTt?MuMGKV^)r(my3a%B}Um+BC~Q- zHM9SM+!K)v=Xs8iM&(<%U{g89Y)5NG_L=)dT96@dd}5t9%p55Pa*!;2*0cOU2A47M|! z2^0bj2F3z`$DnuN3AQIqk~0TqeeW}iND{qy2?&rz5)zllBObyTA17x#kF1R%HnRdc zhj#}0BS)~~tnZ8n;uG#+!5P08IvEMG1cnl`@CK)jlO$nFRX|4*!}(dN6$dJ8?}gDxKVn3lP76Pdn4sFB)KpI(fV|kl%tS15zujOy zxt#MuMwsBT*l&g*UA7ww&o|p96StNsH(c)H(OQgYBdDA07d+8k(N;tiDa(?gd4o@= zQ{+M(tOT@E`PLgpy23`nktr`RB~4I5Z%txnqLB}RKKeYov%#J-ek>v>HOMVN7E*#Y zuukOR;W_{S1h+{vJKGMg#!jcfCRW zjQOoLVpA*tCaYfH_oOV@QRuNJnwAN`_*D76l z*4aM$yWSDZu2Zh?>NdQwI^r%zQ~j)hrQFL~a;KAhwmO8!P?;!9x|Iwu>@E@SP99QS zQa7FCiI2dzO2}a0Twf8gCPqqL2rOMvGSnn2Nsr^y(Q(SeN>);`O&9W-5oD_ZOo5D6 zN%z?q#(^&6QMdGjQ+-j$-sMzZHPX@x-u%}|kEd;0R;8iG$_+Mirms~C)zQF6TVsxE zZnZoWA#$p1^_)q>EhqZ2kWP)rP*k+sVFR`+l3KCYRyJM89uKWn;Vb3sLRX#f@3t=N z7#?z-yF9aAtRk;*Ug^f@P!+66yMHrKOd-9h)_dfsV|4jlKAm}>~2I|n2_zH5+$)H)4>CBNJdWdk~-N?HGeFt znG-xh$cdD|--%W=_!Aaw7FDO}j1%17$f+cR@slC;AbzS7l|J}$e)|g%`c{LkOJJmD z9z@c~pIAp3F&D$h(qXT`L~(l967`(k5moX2k(65y03^4o?}JKD(QQVd-9DxFJdUv$rz9a=ur*{VmFtIIh!s{?C6Lneh!7HxTqoN@i7SAOO zwz`NSZab-WMPxMYB`2jMCFAI%-fHA#Ij4^pIgh_AoYLQj$k~N_%E1WorrGu`{pl^kqCDj$o0|v$}R*GBN+8VEDo3nqgzCVqx~oLlgGMoEX7dCN)-m z^IdkNzQYs#PMf3mlR}c+8-%{wAm;BSy1LI-=wpaeK}pc#oKFD@4YFEra3I zZxf+<;T*ar_y~U3y)8ziKrInz<~k{#AG412a(3J{FN)t})k@4?~}FpKtg~7h)DMBD3t@@lb)kZOzS>_1?Q2(I+y zfktfETywloT381Oc0g*ZusO#Xlh`e}<#j2CvNYk@5LFU?=KbX@xA zFqb{cIYZWKRnX=xezRwFqExw5b)?vk5}v2k_1`j*o24c;uQ^SLzga-_g{K5dI9liYuL@rOXhIwVfcb=@!+^?bg;WEyk@lDeb=4T zF&I%r^HHpG8hrTGCtu^*5O_5Z%Ty3J&u*xj>YlYdc zugPH@IMKOv(CgosfE&mH*=$1(*;27mDTU9X@Nvd-E%>yYeGf+QzTKXOqI-Yqx#@aG zVhd{X6!U9OBq*v)DhJhI{?`9?zjOZKHmZDWm}|nCVdE|$-frN1KCmj3xI+)YLWO$? zZ{@j&Ht!YZ+LE+VCVHQ$4ogw88=kM2Md+0XpK)z*dQO0n$$$jOK2O{ zj=@H?#(o_A)R*4E@&$Qq8!K_M&(ekGQZj$0!>u>Jbj~H|KfG5{)YX2U^|xnI@5p6V z5jt1>!5ZfppTRP5TA(n4^gZ7H60t9g8|};6FWvpG?4d&Mh-LTwl5-h7{Nfe+jPX}{ zGN(-$$J92jNi$3tdM@xdxkWuFy;Y#ZY;gi`Iv0ToR}OtM$lJiiK+wG@wpA)_;5nHA zOV@Upu=ph3+{*zGytm?qPJ*efty0Qx^=HMJarvIM+kt6T_cMZpVCkvSGs)&k13+cN zjooo+TlW)X>aHg1740vZrc89T8-k1&Q%Ac$c`%^(!?MkJ1(vdzrxqT1sio$=wth9z zOE4{{J73DuJCbU#8%+eWCuhY3h5?CCShMJl??<&?sln{RQzq_Nb6E3040tIi3jghi zt0qG!$==yIJ%hgeX7|J8hcyOHZna7draRS*WsL?ATrH3BMx=bHmQOjlOTRtE%xq#u zX`S5q+@6V4?=X(A`8DS#W{!%@phEHE;XuNJ^PJd2(oHEO=4!nlFb(bQZCR zsPe@P-K=hQ1jFv=ELe5S?ex=kE~EF<-qqdo$OS5;&%5tgvclglPI5Xk;qvzRK&c?2 zUfdOYi@ST-?6VDs$u$;PCd_I?DFV7gl1gLRZRMjAJm1wCc;o;l06CRY=^`Z>AE9!^ ztJ&XSEvAv}#ycP}JMEh@uo@5ICUTTc48F;J@K8$hqwc2F?z>?$!nTF?;vwWVrO-%)5_;qhYu5!Rjx!NH&dH8tBxx)SB zt+}0;M4?4<-`q(&Vcpxi&)djeK||cExRE(wG&4UPF0>i7k@c96S}iyujy>uXkjk zc9)sOF_S}x{tZsb<+03C>*V5L6KU}ecatT4EHZ;wLcDBfjrOTB(f=S^9ge@jGY1rq z#v;Ruoz%~S>vaJv(bK5wM zgOkb>6AKmo2>Y}B4fUfr{#MY4Ro11rnH5?R6w+Gp9JjY|;kRd0N$tLrliTN^AH(NE z^agq62ahz-5FWTZ7Z>)m8VNwo*Yx2ZHzw{~4T1^**s+(uJ4N7dLHu9cnV>gZlmMWM zC#Dnm41=>=_8}5E|~^icvEuJ&YGPs3Pw7b>`55vkVCIyidRF!Q48z0028()Y7L_Y4DW3 z`NaYXZmi>5?dMLLempT(R&=iFE3P9^pt5WnSG&PO2ps#3V{BdasuCWJ*O4a zWWI!EV(Q}s9$f2y87TD>SmnWIQu`_!5EU!ozH@!NzobGb#;rJe7QwF%2Cb6VSlA>YNv(Xh{$u~at_V6vD5{^yvqV>FA0=X*a8!7VRMSYXa zk2qqXW|BA_DF0Najp(1?V8xy9<1UxbX##jNyp4m@V=5u-jBrZODEbZ~`v7`7CX#n!y{+18rcWnQB%5DrL-s;oBy`P0i}QU*zIT4IY5t!&?ms!eks`$8SvEyJzYt-C2s2h5*T z;SPDGSfCl`C6E8fG$|Ne3i!2rMHqmRWZn#1l9{gNlkz764oV4oPu(X~Bk3C1=)^TKwvid3?XXtHUIP7sX^J&oIC&+yfte;)zqR6! z6PVQ9(%hmiWT$y7<-?`THh}N(ucFQIR|nE>#l7JqO_iL;%l5{@5&;(njPx!?Dt*04Oy{eUBJrV-C!wX}jOT--x=qv#Iz$%dIkV1%br6!E)LA9xw$Ww|{cQ zCKGT1p2}(G{)D-fC=%g#Nc`jRNUn6Uhp*aHAhKpTuJ7a0VZLlQBeD%l3yyi}_ZRfr zlLyFig-DQC9B*WhKK8jMnHK;K;h56yWVu@Bl8x68r~>hOsBB+;e zc)v$9*8^>%;LHu%Ml4U95^%-O+5ix;%$=E8{Izny&&r+Ddb~u!PHKgA{Ans8uxts`-0l{jT0yoJH2i6#)^jZpXObccAUm zFWXN{9Q&0&!Ew=zFH%qKQ>N>_0+ znt|CAmy1-vkerP_u{Qv|dWtM8US6PsO3>zMEv35ya;`Bn;xpm0WMWZ1G4cem@Gh{H z(i7%NqKlP^m*HQ4BP(B2MOIR@Npbtc1Ady|KSjS5i#cF9^I;Q!T+73N7(pfuXz1d@v6L5eVgbp@=TO66O=jl=T%Y;74puW=GxlK2QJpxYg}?8|VFDOqde z0X9{~fI~78`zZfj(m`dh)CIbwO+e5kuPT6ry#w9XIqn0pUeANhR09JJ<9%xsL3LRB zDI^|LdCT3LeKTL`r}<@b8$bzkq(Xp#xNzVwHx_&eaH3EO{t^-oubizi*_jOeZe#5k zK9ODbfgdSo3x>Sj=p5lKZ4)&Zv*f{;pAw)!%sJ)y8Ud&bm#{BfOl?vkH&;2bgv5Z< zznY70)~*umQ_7I0$C!MRkB0rKkAsiS9NA<2bPjSpwc^>qC(kc3A&$auA$Y`i`Z5{i zQm44}lH;zyScn=i;5-C+|0jUU9zYvi_6|v-EC3g3kNu*ZkGM%H`)484MDOJ0k-WGn z0FRHE6M5*%=H6CWM_Q=%W)V0G*3}$O`Q9>|R#vOTjJ7y${OzsZ05w|>_! zP$`~+_JZ8f;1XYEbNSb;`}5W7DHV6C>X`0DbJA9c+b45@nJ zHrcMH!GTweye%)omcREfvjh+^4b%P?%Y54`Mg{hj7E_7ivUjKL~VMT(q7LsI_Br;CTQ8-4=qgcNz~67bxnt7GYdal(h!} zNtisC*uy?=TDQMs##B-wf6ym*BjNJHvUaPjjeOkxl*8>jRR}#cP7`Q&Y{H?dI*-hQ zS9G}uK_E~IRA3K$+y#jb-n8a{InjVO?vlY<`*cN}yg3S`FQ)G@z8Lt~m`d*n2z z9~{FYnq=zbZcw+~!$!Q9#mZ??zuxPKcrTMAr-k_y6Urt*ywweXf-q-k!Ak-^qZ$*G zX~CfBP*4y;l#%VrIjF!>em3x%F57nYRuYDH}#a#@plDL{!xm8@aY!}Mt%)gD|xEL z(mo~g({>-3ju(Ci&Oq)rgs*60J}jsRb4ihS4IxmgKAGU5nW^>=kouWzS>1pJ7a6J_ z=ApbEDh;;_!N%>sBT#x!g(%}Sj4q3*{mvsA3Idle^bABJNEFfl1{j( zA4j*414h{NV!Opd3-+F+8RhHds}(wSL?I~S(Ha+OBo;&idMXGXJnhrj=U6fXIksLs zVf@@!oUAqikOeUewt-wW3NNV(>3w>?AqhyhPs0`JPKaZz^P`mI!Y8+($^Ahc!r)vku zE-Ia`FoYq8nx+wYtT2=@e+2z;WCfJO$b-s(0^-!$x$+y#=GKG$Km{T!^x14b(wR`> z)hQX80mHIsMjeL%+MMjWl71bkNWK2#y&s=|>(?RBJfQ*xxt~E7sP>z(cl2itGrXog zh_2CpumEFz-IFxIr$e{1MO5O?Q%`uWF|i7q00^<8^cQ1toEw;@`vjm>)0)&~c^{Il zRv7p@g>!F=SQ`YWoBz~#)U;=GZtL<ECcK?|vD0xa7+Pq|$S1LD7gs+wM>krakwBw|iNKGFfw`l!-CW7hL|?elbiggzci iH1Bs(#;GXMKbp&zW^$R;=O;kGkDivXW|@XV@c#g5=>oX` diff --git a/src/assets/img/vue-antd-logo.png b/src/assets/img/vue-antd-logo.png deleted file mode 100644 index bbdbbfde370667ecaeb294700bce5c63db2b88ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24587 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 diff --git a/src/components/menu/SiderMenu.vue b/src/components/menu/SiderMenu.vue index 9b0a4e9..a36d5cb 100644 --- a/src/components/menu/SiderMenu.vue +++ b/src/components/menu/SiderMenu.vue @@ -6,7 +6,7 @@

{{systemName}}

- + @@ -15,6 +15,7 @@ import IMenu from './menu' export default { name: 'SiderMenu', components: {IMenu}, + inject: ['menuI18n'], props: { collapsible: { type: Boolean, diff --git a/src/components/menu/menu.js b/src/components/menu/menu.js index 62b4d90..9bed16e 100644 --- a/src/components/menu/menu.js +++ b/src/components/menu/menu.js @@ -1,35 +1,46 @@ /** * 该插件可根据菜单配置自动生成 ANTD menu组件 - * menuData示例: + * menuOptions示例: * [ * { * title: '菜单标题', - * icon: '菜单图标', * path: '菜单路由', - * invisible: 'boolean, 是否不可见', + * meta: { + * icon: '菜单图标', + * invisible: 'boolean, 是否不可见, 默认 false', + * }, * children: [子菜单配置] * }, * { * title: '菜单标题', - * icon: '菜单图标', * path: '菜单路由', - * invisible: 'boolean, 是否不可见', + * meta: { + * icon: '菜单图标', + * invisible: 'boolean, 是否不可见, 默认 false', + * }, * children: [子菜单配置] * } * ] + * + * i18n: 国际化配置。组件默认会根据 options route配置的 path 和 name 生成英文以及中文的国际化配置,如需自定义或增加其他语言,配置 + * 此项即可。如: + * i18n: { + * CN: {dashboard: {name: '监控中心'}} + * HK: {dashboard: {name: '監控中心'}} + * } **/ import Menu from 'ant-design-vue/es/menu' import Icon from 'ant-design-vue/es/icon' +import '@/utils/Objects' const {Item, SubMenu} = Menu -// 默认菜单图标数组,如果菜单没配置图标,则会设置从该数组随机取一个图标配置 -const iconArr = ['dashboard', 'user', 'form', 'setting', 'message', 'safety', 'bell', 'delete', 'code-o', 'poweroff', 'eye-o', 'hourglass'] - export default { name: 'IMenu', + i18n: { + }, props: { - menuData: { + options: { type: Array, required: true }, @@ -47,7 +58,8 @@ export default { type: Boolean, required: false, default: false - } + }, + i18n: Object }, data () { return { @@ -59,14 +71,26 @@ export default { computed: { rootSubmenuKeys: (vm) => { let keys = [] - vm.menuData.forEach(item => { + vm.options.forEach(item => { keys.push(item.path) }) return keys } }, + beforeMount() { + let CN = this.generateI18n(new Object(), this.options, 'name') + let US = this.generateI18n(new Object(), this.options, 'path') + this.$i18n.setLocaleMessage('CN', CN) + this.$i18n.setLocaleMessage('US', US) + if(this.i18n) { + Object.keys(this.i18n).forEach(key => { + this.$i18n.mergeLocaleMessage(key, this.i18n[key]) + }) + } + }, created () { this.updateMenu() + this.formatOptions(this.options, '') }, watch: { collapsed (val) { @@ -83,65 +107,72 @@ export default { }, methods: { renderIcon: function (h, icon) { - return icon === 'none' ? null - : h( - Icon, - { - props: {type: icon !== undefined ? icon : iconArr[Math.floor((Math.random() * iconArr.length))]} - }) + return !icon || icon == 'none' ? null : h(Icon, {props: {type: icon}}) }, - renderMenuItem: function (h, menu, pIndex, index) { + renderMenuItem: function (h, menu) { return h( - Item, - { - key: menu.path ? menu.path : 'item_' + pIndex + '_' + index - }, + Item, {key: menu.fullPath}, [ - h( - 'RouterLink', - // {attrs: {href: '#' + menu.path}}, - {attrs: {to: menu.path}}, + h('a', {attrs: {href: '#' + menu.fullPath}}, [ - this.renderIcon(h, menu.icon), - h('span', [menu.name]) + this.renderIcon(h, menu.meta ? menu.meta.icon : 'none'), + h('span', [this.$t(menu.fullPath.substring(1).replace(new RegExp('/', 'g'), '.') + '.name')]) ] ) ] ) }, - renderSubMenu: function (h, menu, pIndex, index) { - var this2_ = this - var subItem = [h('span', - {slot: 'title'}, + renderSubMenu: function (h, menu) { + let this_ = this + let subItem = [h('span', {slot: 'title'}, [ - this.renderIcon(h, menu.icon), - h('span', [menu.name]) + this.renderIcon(h, menu.meta ? menu.meta.icon : 'none'), + h('span', [this.$t(menu.fullPath.substring(1).replace(new RegExp('/', 'g'), '.') + '.name')]) ] )] - var itemArr = [] - var pIndex_ = pIndex + '_' + index - menu.children.forEach(function (item, i) { - itemArr.push(this2_.renderItem(h, item, pIndex_, i)) + let itemArr = [] + menu.children.forEach(function (item) { + itemArr.push(this_.renderItem(h, item)) }) - return h( - SubMenu, - {key: menu.path ? menu.path : 'submenu_' + pIndex + '_' + index}, + return h(SubMenu, {key: menu.fullPath}, subItem.concat(itemArr) ) }, - renderItem: function (h, menu, pIndex, index) { - if (!menu.invisible) { - return menu.children ? this.renderSubMenu(h, menu, pIndex, index) : this.renderMenuItem(h, menu, pIndex, index) + renderItem: function (h, menu) { + const meta = menu.meta + if (!meta || !meta.invisible) { + let renderChildren = false + const children = menu.children + if (children != undefined) { + for (let i = 0; i < children.length; i++) { + const childMeta = children[i].meta + if (!childMeta || !childMeta.invisible) { + renderChildren = true + break + } + } + } + return (menu.children && renderChildren) ? this.renderSubMenu(h, menu) : this.renderMenuItem(h, menu) } }, renderMenu: function (h, menuTree) { - var this2_ = this - var menuArr = [] + let this_ = this + let menuArr = [] menuTree.forEach(function (menu, i) { - menuArr.push(this2_.renderItem(h, menu, '0', i)) + menuArr.push(this_.renderItem(h, menu, '0', i)) }) return menuArr }, + formatOptions(options, parentPath) { + let this_ = this + options.forEach(route => { + let isFullPath = route.path.substring(0, 1) == '/' + route.fullPath = isFullPath ? route.path : parentPath + '/' + route.path + if (route.children) { + this_.formatOptions(route.children, route.fullPath) + } + }) + }, onOpenChange (openKeys) { const latestOpenKey = openKeys.find(key => this.openKeys.indexOf(key) === -1) if (this.rootSubmenuKeys.indexOf(latestOpenKey) === -1) { @@ -152,12 +183,29 @@ export default { }, updateMenu () { let routes = this.$route.matched.concat() - this.selectedKeys = [routes.pop().path] + const route = routes.pop() + this.selectedKeys = [this.getSelectedKey(route)] let openKeys = [] routes.forEach((item) => { openKeys.push(item.path) }) this.collapsed || this.mode === 'horizontal' ? this.cachedOpenKeys = openKeys : this.openKeys = openKeys + }, + getSelectedKey (route) { + if (route.meta.invisible && route.parent) { + return this.getSelectedKey(route.parent) + } + return route.path + }, + generateI18n(lang, options, valueKey) { + options.forEach(menu => { + let keys = menu.fullPath.substring(1).split('/').concat('name') + lang.assignProps(keys, menu[valueKey]) + if (menu.children) { + this.generateI18n(lang, menu.children, valueKey) + } + }) + return lang } }, render (h) { @@ -177,7 +225,7 @@ export default { this.$emit('select', obj) } } - }, this.renderMenu(h, this.menuData) + }, this.renderMenu(h, this.options) ) } } diff --git a/src/config/index.js b/src/config/index.js index 3404910..a3414fb 100644 --- a/src/config/index.js +++ b/src/config/index.js @@ -1,5 +1,6 @@ // 系统配置 module.exports = { + lang: 'CN', themeColor: '#1890ff', theme: 'dark', layout: 'side', diff --git a/src/layouts/GlobalHeader.vue b/src/layouts/GlobalHeader.vue index 203a5cd..0d2f1c6 100644 --- a/src/layouts/GlobalHeader.vue +++ b/src/layouts/GlobalHeader.vue @@ -8,7 +8,7 @@
- +
@@ -19,6 +19,16 @@ + +
+ +
+ + cn 简体中文 + hk 繁体中文 + us English + +
@@ -40,8 +50,9 @@ export default { headerTheme: this.theme } }, + inject: ['menuI18n'], computed: { - ...mapState('setting', ['theme', 'isMobile', 'layout', 'systemName']), + ...mapState('setting', ['theme', 'isMobile', 'layout', 'systemName', 'lang']), headerTheme () { return (this.layout == 'side' && !this.isMobile) ? 'light' : this.theme } @@ -52,6 +63,9 @@ export default { }, onSelect (obj) { this.$emit('menuSelect', obj) + }, + changeLang(lang) { + this.$store.commit('setting/setLang', lang.key) } } } @@ -69,7 +83,7 @@ export default { } } .global-header{ - padding: 0 12px 0 0; + padding: 0; -webkit-box-shadow: 0 1px 4px rgba(0,21,41,.08); box-shadow: 0 1px 4px rgba(0,21,41,.08); z-index: 1; @@ -124,11 +138,17 @@ export default { a, i{ color: #fff !important; } + .header-item:hover{ + background-color: @primary-color; + } } .header-item{ padding: 0 12px; cursor: pointer; align-self: center; + &:hover{ + background-color: @gray-3; + } i{ font-size: 16px; color: rgba(0,0,0,.65); diff --git a/src/layouts/GlobalLayout.vue b/src/layouts/GlobalLayout.vue index b805765..d8c3b45 100644 --- a/src/layouts/GlobalLayout.vue +++ b/src/layouts/GlobalLayout.vue @@ -51,6 +51,7 @@ export default { provide() { return{ layoutMinHeight: minHeight, + menuI18n: require('@/router/i18n').default } }, computed: { diff --git a/src/layouts/HeaderSearch.vue b/src/layouts/HeaderSearch.vue index 108d81f..e0b74ea 100644 --- a/src/layouts/HeaderSearch.vue +++ b/src/layouts/HeaderSearch.vue @@ -1,5 +1,5 @@