-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
1 lines (1 loc) · 45 KB
/
index.html
1
<!doctype html><html lang="zh-CN"><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width,initial-scale=1" /><meta name="generator" content="VuePress 2.0.0-rc.15" /><meta name="theme" content="VuePress Theme Plume " /><script id="check-dark-mode">;(function () {const um= localStorage.getItem('vuepress-theme-appearance') || 'auto';const sm = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;const isDark = um === 'dark' || (um !== 'light' && sm);document.documentElement.dataset.theme = isDark ? 'dark' : 'light';})();</script><script id="check-mac-os">document.documentElement.classList.toggle('mac', /Mac|iPhone|iPod|iPad/i.test(navigator.platform))</script><meta property="og:url" content="https://wangjw.cn/"><meta property="og:site_name" content="ross.dev"><meta property="og:description" content="开源项目"><meta property="og:type" content="article"><meta property="og:locale" content="zh-CN"><meta property="og:updated_time" content="2024-10-04T06:47:40.000Z"><meta property="article:modified_time" content="2024-10-04T06:47:40.000Z"><script type="application/ld+json">{"@context":"https://schema.org","@type":"Article","headline":"","image":[""],"dateModified":"2024-10-04T06:47:40.000Z","author":[]}</script><link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5"><meta name="keywords" content="前端,front-end,ross.dev"><meta http-equiv="X-UA-Compatible" content="IE=edg"><meta name="msapplication-TileColor" content="#da532c"><meta name="theme-color" content="#ffffff"><meta name="msvalidate.01" content="F93FF013B8AA2553779A91388C14A0F7"><meta name="google-site-verification" content="X5YSaTDn-pKqQBUKD_05_dQcxVItzEq7Rlbg2ZEU7AM"><title>ross.dev</title><meta name="description" content="开源项目"><link rel="preload" href="/assets/style-DS7jkYWP.css" as="style"><link rel="stylesheet" href="/assets/style-DS7jkYWP.css"><link rel="modulepreload" href="/assets/app-CoYBJm5w.js"><link rel="modulepreload" href="/assets/index.html-BV_TANQi.js"><link rel="prefetch" href="/assets/index.html-CCzGmlXx.js" as="script"><link rel="prefetch" href="/assets/index.html-BvuQ8uvD.js" as="script"><link rel="prefetch" href="/assets/index.html-C0Hg2RZ7.js" as="script"><link rel="prefetch" href="/assets/index.html-CCbdUU4i.js" as="script"><link rel="prefetch" href="/assets/index.html-Cplehnfv.js" as="script"><link rel="prefetch" href="/assets/index.html-ZAvV7UVv.js" as="script"><link rel="prefetch" href="/assets/index.html-CNwmUA0Q.js" as="script"><link rel="prefetch" href="/assets/index.html-COsom4Up.js" as="script"><link rel="prefetch" href="/assets/index.html-BdTFQSzW.js" as="script"><link rel="prefetch" href="/assets/index.html-BbEhGCps.js" as="script"><link rel="prefetch" href="/assets/index.html-CoAfcGQ3.js" as="script"><link rel="prefetch" href="/assets/index.html-B3jkEnUT.js" as="script"><link rel="prefetch" href="/assets/index.html-C0KXs_ZK.js" as="script"><link rel="prefetch" href="/assets/index.html-CYRAtpRi.js" as="script"><link rel="prefetch" href="/assets/index.html-CPQ9ZVSe.js" as="script"><link rel="prefetch" href="/assets/index.html-DsnPzkfr.js" as="script"><link rel="prefetch" href="/assets/index.html-CINyrBJ4.js" as="script"><link rel="prefetch" href="/assets/index.html-3Jk9iJym.js" as="script"><link rel="prefetch" href="/assets/index.html-dtSvsl_g.js" as="script"><link rel="prefetch" href="/assets/index.html-DiGTmLQV.js" as="script"><link rel="prefetch" href="/assets/index.html-BZGH1t5r.js" as="script"><link rel="prefetch" href="/assets/index.html-e1FVI64j.js" as="script"><link rel="prefetch" href="/assets/index.html-Bt6sIwH6.js" as="script"><link rel="prefetch" href="/assets/index.html-DDWVCqBf.js" as="script"><link rel="prefetch" href="/assets/index.html-CLwRsXAP.js" as="script"><link rel="prefetch" href="/assets/index.html--_vA-eHt.js" as="script"><link rel="prefetch" href="/assets/index.html-DCyBiKOC.js" as="script"><link rel="prefetch" href="/assets/index.html-29zqM9Ny.js" as="script"><link rel="prefetch" href="/assets/index.html-mzELeAzu.js" as="script"><link rel="prefetch" href="/assets/index.html-rHsjKx_W.js" as="script"><link rel="prefetch" href="/assets/index.html-BBa2mGO7.js" as="script"><link rel="prefetch" href="/assets/index.html-Bsr6XRTT.js" as="script"><link rel="prefetch" href="/assets/index.html-BYuXR_r1.js" as="script"><link rel="prefetch" href="/assets/index.html-QBqeV1Xr.js" as="script"><link rel="prefetch" href="/assets/index.html-BBwGo2Nr.js" as="script"><link rel="prefetch" href="/assets/index.html-nzPWnRs0.js" as="script"><link rel="prefetch" href="/assets/index.html-DdyNv-BZ.js" as="script"><link rel="prefetch" href="/assets/index.html-BIqPsXJJ.js" as="script"><link rel="prefetch" href="/assets/index.html-Cr2wTyZs.js" as="script"><link rel="prefetch" href="/assets/index.html-JwMM9QQi.js" as="script"><link rel="prefetch" href="/assets/index.html-CYF2C1Wi.js" as="script"><link rel="prefetch" href="/assets/index.html-C-num2ta.js" as="script"><link rel="prefetch" href="/assets/index.html-CZQJDY-1.js" as="script"><link rel="prefetch" href="/assets/index.html-CVmqlPhg.js" as="script"><link rel="prefetch" href="/assets/index.html-BMCYmpf6.js" as="script"><link rel="prefetch" href="/assets/index.html-qpnYyO46.js" as="script"><link rel="prefetch" href="/assets/index.html-Buhkl01X.js" as="script"><link rel="prefetch" href="/assets/index.html-Cas0dYc5.js" as="script"><link rel="prefetch" href="/assets/index.html-lnw7ItN4.js" as="script"><link rel="prefetch" href="/assets/index.html-lYKLTu2j.js" as="script"><link rel="prefetch" href="/assets/index.html-BKFw4gYK.js" as="script"><link rel="prefetch" href="/assets/index.html-BaWXF3IY.js" as="script"><link rel="prefetch" href="/assets/index.html-DvaI5BvQ.js" as="script"><link rel="prefetch" href="/assets/index.html-Zxcm9A75.js" as="script"><link rel="prefetch" href="/assets/index.html-BWyM2_Wb.js" as="script"><link rel="prefetch" href="/assets/index.html-JtwQUjt9.js" as="script"><link rel="prefetch" href="/assets/index.html-DTP_8o5I.js" as="script"><link rel="prefetch" href="/assets/index.html-BAP6QYCB.js" as="script"><link rel="prefetch" href="/assets/index.html-BLLusEV-.js" as="script"><link rel="prefetch" href="/assets/index.html-BamaC5d8.js" as="script"><link rel="prefetch" href="/assets/index.html-DCxVXKiJ.js" as="script"><link rel="prefetch" href="/assets/index.html-DYuhZlFS.js" as="script"><link rel="prefetch" href="/assets/index.html-Bz2I4YC4.js" as="script"><link rel="prefetch" href="/assets/index.html-BUP-04Rr.js" as="script"><link rel="prefetch" href="/assets/index.html-CL9KyLgC.js" as="script"><link rel="prefetch" href="/assets/index.html-UkQ3JAoV.js" as="script"><link rel="prefetch" href="/assets/index.html-CPekp17W.js" as="script"><link rel="prefetch" href="/assets/index.html-D4Nx4xpa.js" as="script"><link rel="prefetch" href="/assets/index.html-qAC04NHP.js" as="script"><link rel="prefetch" href="/assets/index.html-Bb5nOawg.js" as="script"><link rel="prefetch" href="/assets/index.html-ppyWjdm4.js" as="script"><link rel="prefetch" href="/assets/index.html-B-T6mCF-.js" as="script"><link rel="prefetch" href="/assets/index.html-DMi80NLP.js" as="script"><link rel="prefetch" href="/assets/index.html-Bn1O3m8J.js" as="script"><link rel="prefetch" href="/assets/index.html-BToDT87u.js" as="script"><link rel="prefetch" href="/assets/index.html-DcEHvaDC.js" as="script"><link rel="prefetch" href="/assets/index.html-Dtej4A9M.js" as="script"><link rel="prefetch" href="/assets/index.html-Bwao7pTT.js" as="script"><link rel="prefetch" href="/assets/index.html-CmoBjszC.js" as="script"><link rel="prefetch" href="/assets/index.html-CvSHcie4.js" as="script"><link rel="prefetch" href="/assets/index.html-BUPnbiXG.js" as="script"><link rel="prefetch" href="/assets/index.html-BAifJyeT.js" as="script"><link rel="prefetch" href="/assets/index.html-DkvWY-Sf.js" as="script"><link rel="prefetch" href="/assets/index.html-BD9Mc65r.js" as="script"><link rel="prefetch" href="/assets/index.html-D3koKkxC.js" as="script"><link rel="prefetch" href="/assets/index.html-BUufx9DW.js" as="script"><link rel="prefetch" href="/assets/index.html-BXC4PGD2.js" as="script"><link rel="prefetch" href="/assets/index.html-DAuuG8h0.js" as="script"><link rel="prefetch" href="/assets/index.html-C5Tq0De8.js" as="script"><link rel="prefetch" href="/assets/index.html-qA1X0fxH.js" as="script"><link rel="prefetch" href="/assets/index.html-dN3irLCW.js" as="script"><link rel="prefetch" href="/assets/index.html-DetFVdk3.js" as="script"><link rel="prefetch" href="/assets/index.html-C6BcnPU0.js" as="script"><link rel="prefetch" href="/assets/index.html-BQ6iKR_C.js" as="script"><link rel="prefetch" href="/assets/index.html-Rhy1x-Af.js" as="script"><link rel="prefetch" href="/assets/index.html-Dtbw3FRL.js" as="script"><link rel="prefetch" href="/assets/index.html-BzCXIAub.js" as="script"><link rel="prefetch" href="/assets/index.html-D_L3JzrJ.js" as="script"><link rel="prefetch" href="/assets/index.html-C2Y1fHwI.js" as="script"><link rel="prefetch" href="/assets/index.html-Ccz08QNY.js" as="script"><link rel="prefetch" href="/assets/index.html-ycEqrIcl.js" as="script"><link rel="prefetch" href="/assets/index.html-D8frY5u8.js" as="script"><link rel="prefetch" href="/assets/index.html-B2N5yqjv.js" as="script"><link rel="prefetch" href="/assets/index.html-pQKxbdAZ.js" as="script"><link rel="prefetch" href="/assets/index.html-Cs0mZ2Hs.js" as="script"><link rel="prefetch" href="/assets/index.html-3px1bY0v.js" as="script"><link rel="prefetch" href="/assets/index.html-DGMC_Avf.js" as="script"><link rel="prefetch" href="/assets/index.html-k3lAnhlF.js" as="script"><link rel="prefetch" href="/assets/index.html-CL1OFAr6.js" as="script"><link rel="prefetch" href="/assets/index.html-CcSyfCOv.js" as="script"><link rel="prefetch" href="/assets/index.html-DWWiJFEd.js" as="script"><link rel="prefetch" href="/assets/index.html-D_u6Q5h5.js" as="script"><link rel="prefetch" href="/assets/index.html-BE7jS2Q6.js" as="script"><link rel="prefetch" href="/assets/index.html-YPjX3GKs.js" as="script"><link rel="prefetch" href="/assets/index.html-dNcSXqAB.js" as="script"><link rel="prefetch" href="/assets/index.html-4ISHzGat.js" as="script"><link rel="prefetch" href="/assets/index.html-BOhbZPAx.js" as="script"><link rel="prefetch" href="/assets/index.html-BJ2xIDmR.js" as="script"><link rel="prefetch" href="/assets/index.html-DZ8-_D2T.js" as="script"><link rel="prefetch" href="/assets/elastic-sync.html-u1GgQ-GK.js" as="script"><link rel="prefetch" href="/assets/interview-questions.html-CZj2Tap0.js" as="script"><link rel="prefetch" href="/assets/index.html-DnxZ-9i1.js" as="script"><link rel="prefetch" href="/assets/index.html-D_AYYyi9.js" as="script"><link rel="prefetch" href="/assets/index.html-DYKNbc6_.js" as="script"><link rel="prefetch" href="/assets/index.html-Bjm__Uun.js" as="script"><link rel="prefetch" href="/assets/index.html-5JECYVXc.js" as="script"><link rel="prefetch" href="/assets/index.html-CsVvNxON.js" as="script"><link rel="prefetch" href="/assets/index.html-DBL-_Pkj.js" as="script"><link rel="prefetch" href="/assets/index.html-CuUERdF_.js" as="script"><link rel="prefetch" href="/assets/index.html-CXklsPx9.js" as="script"><link rel="prefetch" href="/assets/index.html-Cl10FEaW.js" as="script"><link rel="prefetch" href="/assets/index.html-7d3gu9hf.js" as="script"><link rel="prefetch" href="/assets/index.html-BQaqAsUo.js" as="script"><link rel="prefetch" href="/assets/index.html-BO_96VbO.js" as="script"><link rel="prefetch" href="/assets/index.html-DEes_V2x.js" as="script"><link rel="prefetch" href="/assets/index.html-DzvnDzuK.js" as="script"><link rel="prefetch" href="/assets/index.html--CIoh0yG.js" as="script"><link rel="prefetch" href="/assets/index.html-BXIbzUpV.js" as="script"><link rel="prefetch" href="/assets/index.html-CNv4Hz6w.js" as="script"><link rel="prefetch" href="/assets/index.html-DplCHjv3.js" as="script"><link rel="prefetch" href="/assets/index.html-BY02JxDm.js" as="script"><link rel="prefetch" href="/assets/index.html-D4EZJOiu.js" as="script"><link rel="prefetch" href="/assets/index.html-BY2ToTal.js" as="script"><link rel="prefetch" href="/assets/index.html-DYIAP-Wd.js" as="script"><link rel="prefetch" href="/assets/index.html-Bs4zNV8B.js" as="script"><link rel="prefetch" href="/assets/index.html-D1HdzMMN.js" as="script"><link rel="prefetch" href="/assets/index.html-N9t13NNl.js" as="script"><link rel="prefetch" href="/assets/index.html-BRoigHAZ.js" as="script"><link rel="prefetch" href="/assets/index.html-BsNfXOvj.js" as="script"><link rel="prefetch" href="/assets/index.html-Wpaou_rJ.js" as="script"><link rel="prefetch" href="/assets/index.html-BWwCdfuI.js" as="script"><link rel="prefetch" href="/assets/index.html-C_QcWcil.js" as="script"><link rel="prefetch" href="/assets/index.html-Kl0fn1Gi.js" as="script"><link rel="prefetch" href="/assets/index.html-CbO5V3n6.js" as="script"><link rel="prefetch" href="/assets/index.html-CpUtzl15.js" as="script"><link rel="prefetch" href="/assets/index.html-B3WrWUBS.js" as="script"><link rel="prefetch" href="/assets/index.html-BllaToNg.js" as="script"><link rel="prefetch" href="/assets/index.html-CG3GlqF7.js" as="script"><link rel="prefetch" href="/assets/index.html-CbdbClqc.js" as="script"><link rel="prefetch" href="/assets/index.html--wpw7Glj.js" as="script"><link rel="prefetch" href="/assets/index.html-DqzqqQU_.js" as="script"><link rel="prefetch" href="/assets/index.html-BTT7Rs6G.js" as="script"><link rel="prefetch" href="/assets/index.html-kzo6ZBug.js" as="script"><link rel="prefetch" href="/assets/index.html-MwpdC6Mn.js" as="script"><link rel="prefetch" href="/assets/index.html-BOe99SYX.js" as="script"><link rel="prefetch" href="/assets/index.html-nkJi1xVw.js" as="script"><link rel="prefetch" href="/assets/index.html-gxtJoD-A.js" as="script"><link rel="prefetch" href="/assets/index.html-CeOShtPJ.js" as="script"><link rel="prefetch" href="/assets/index.html-Dexz2jJw.js" as="script"><link rel="prefetch" href="/assets/index.html-BrDdFQb5.js" as="script"><link rel="prefetch" href="/assets/index.html-BWAjsrYn.js" as="script"><link rel="prefetch" href="/assets/index.html-BJkQTN5r.js" as="script"><link rel="prefetch" href="/assets/index.html-BaA6RBt_.js" as="script"><link rel="prefetch" href="/assets/index.html-DFkOStmU.js" as="script"><link rel="prefetch" href="/assets/index.html-C6jvocph.js" as="script"><link rel="prefetch" href="/assets/index.html-BM9kCj4V.js" as="script"><link rel="prefetch" href="/assets/index.html-Bunl-nRs.js" as="script"><link rel="prefetch" href="/assets/index.html-nekLBCDP.js" as="script"><link rel="prefetch" href="/assets/index.html-CmdvYyHB.js" as="script"><link rel="prefetch" href="/assets/index.html-C4K1kwoi.js" as="script"><link rel="prefetch" href="/assets/index.html-DmDf4OwD.js" as="script"><link rel="prefetch" href="/assets/index.html-D6ZXJYVw.js" as="script"><link rel="prefetch" href="/assets/index.html-DGaPtPgv.js" as="script"><link rel="prefetch" href="/assets/index.html-D92TCZda.js" as="script"><link rel="prefetch" href="/assets/index.html-MadOePph.js" as="script"><link rel="prefetch" href="/assets/index.html-CrQ5yqI3.js" as="script"><link rel="prefetch" href="/assets/index.html-D1-wZcDX.js" as="script"><link rel="prefetch" href="/assets/index.html-CeKB1BYJ.js" as="script"><link rel="prefetch" href="/assets/index.html-qyRo4X44.js" as="script"><link rel="prefetch" href="/assets/index.html-CtQkixuy.js" as="script"><link rel="prefetch" href="/assets/index.html-C_-WQaXr.js" as="script"><link rel="prefetch" href="/assets/index.html-BraqWTz0.js" as="script"><link rel="prefetch" href="/assets/index.html-BaRojjtV.js" as="script"><link rel="prefetch" href="/assets/index.html-Ba1ubnQT.js" as="script"><link rel="prefetch" href="/assets/index.html-BerKjYJd.js" as="script"><link rel="prefetch" href="/assets/index.html-BWTsjij1.js" as="script"><link rel="prefetch" href="/assets/index.html-DnGfFaCP.js" as="script"><link rel="prefetch" href="/assets/index.html-B6SYL31d.js" as="script"><link rel="prefetch" href="/assets/index.html-Cjdr7_Cg.js" as="script"><link rel="prefetch" href="/assets/index.html-CrkOpMUO.js" as="script"><link rel="prefetch" href="/assets/index.html-B13xQoif.js" as="script"><link rel="prefetch" href="/assets/index.html-CMvSAKke.js" as="script"><link rel="prefetch" href="/assets/index.html-CJBICr2B.js" as="script"><link rel="prefetch" href="/assets/index.html-C2AzET1a.js" as="script"><link rel="prefetch" href="/assets/index.html-DeoBTh5K.js" as="script"><link rel="prefetch" href="/assets/index.html-Cr_fsEXS.js" as="script"><link rel="prefetch" href="/assets/index.html-CVmfOAYs.js" as="script"><link rel="prefetch" href="/assets/index.html-D05CHDQY.js" as="script"><link rel="prefetch" href="/assets/index.html-DbiCPCNB.js" as="script"><link rel="prefetch" href="/assets/index.html-CKOykb6M.js" as="script"><link rel="prefetch" href="/assets/index.html-BNopygMh.js" as="script"><link rel="prefetch" href="/assets/index.html-BBoNXnhA.js" as="script"><link rel="prefetch" href="/assets/index.html-HEbX68LJ.js" as="script"><link rel="prefetch" href="/assets/index.html-DZA94oBM.js" as="script"><link rel="prefetch" href="/assets/index.html-9w1AAWLM.js" as="script"><link rel="prefetch" href="/assets/index.html-DszqA43_.js" as="script"><link rel="prefetch" href="/assets/index.html-DvxL08ja.js" as="script"><link rel="prefetch" href="/assets/index.html-ChUdZUxN.js" as="script"><link rel="prefetch" href="/assets/index.html-CyrWFUVP.js" as="script"><link rel="prefetch" href="/assets/index.html-CHJAZ7W-.js" as="script"><link rel="prefetch" href="/assets/index.html-LsRrbxXL.js" as="script"><link rel="prefetch" href="/assets/index.html-C2VPa8wO.js" as="script"><link rel="prefetch" href="/assets/index.html-w_ABA1w-.js" as="script"><link rel="prefetch" href="/assets/index.html-DSOduf6K.js" as="script"><link rel="prefetch" href="/assets/index.html-xIzuFWcQ.js" as="script"><link rel="prefetch" href="/assets/index.html-x1MllU8h.js" as="script"><link rel="prefetch" href="/assets/index.html-DbvKsSO5.js" as="script"><link rel="prefetch" href="/assets/index.html-ay-tRaCG.js" as="script"><link rel="prefetch" href="/assets/index.html-CAEnlnxV.js" as="script"><link rel="prefetch" href="/assets/index.html-CuA2_qfI.js" as="script"><link rel="prefetch" href="/assets/index.html-D4hSKufc.js" as="script"><link rel="prefetch" href="/assets/index.html-Dj0YChiC.js" as="script"><link rel="prefetch" href="/assets/index.html-oUTfjlYf.js" as="script"><link rel="prefetch" href="/assets/index.html-DnB9XFbE.js" as="script"><link rel="prefetch" href="/assets/index.html-227mJM1T.js" as="script"><link rel="prefetch" href="/assets/index.html-akPDaTZi.js" as="script"><link rel="prefetch" href="/assets/index.html-BkjHiyDQ.js" as="script"><link rel="prefetch" href="/assets/index.html-DEI_suv2.js" as="script"><link rel="prefetch" href="/assets/index.html-DWt7pkuh.js" as="script"><link rel="prefetch" href="/assets/index.html-BDSPRGBg.js" as="script"><link rel="prefetch" href="/assets/index.html-CcDTm1RL.js" as="script"><link rel="prefetch" href="/assets/index.html-6F2r9YH7.js" as="script"><link rel="prefetch" href="/assets/index.html-DRwKU9dT.js" as="script"><link rel="prefetch" href="/assets/index.html-Brs774VR.js" as="script"><link rel="prefetch" href="/assets/index.html-suVBiJQ0.js" as="script"><link rel="prefetch" href="/assets/index.html-DACpymu9.js" as="script"><link rel="prefetch" href="/assets/index.html-D6SKmStN.js" as="script"><link rel="prefetch" href="/assets/index.html-ChEgh06J.js" as="script"><link rel="prefetch" href="/assets/index.html-Bb1NkAnG.js" as="script"><link rel="prefetch" href="/assets/index.html-Nyw-qd6J.js" as="script"><link rel="prefetch" href="/assets/index.html-1V-tASDl.js" as="script"><link rel="prefetch" href="/assets/index.html-BqFx5qJO.js" as="script"><link rel="prefetch" href="/assets/index.html-Bh6e2XbE.js" as="script"><link rel="prefetch" href="/assets/index.html-aeJMUtSe.js" as="script"><link rel="prefetch" href="/assets/index.html-Cy3UxDSq.js" as="script"><link rel="prefetch" href="/assets/index.html-B1Y-yQki.js" as="script"><link rel="prefetch" href="/assets/index.html-CC3Y_3l3.js" as="script"><link rel="prefetch" href="/assets/index.html-DPRl3B4J.js" as="script"><link rel="prefetch" href="/assets/index.html-zgYYoKVo.js" as="script"><link rel="prefetch" href="/assets/index.html-BkgnEIaA.js" as="script"><link rel="prefetch" href="/assets/index.html-Buq-zJCq.js" as="script"><link rel="prefetch" href="/assets/index.html-BjzuSBul.js" as="script"><link rel="prefetch" href="/assets/index.html-Bs7DHOe1.js" as="script"><link rel="prefetch" href="/assets/index.html-CYRUl10G.js" as="script"><link rel="prefetch" href="/assets/index.html-BSz-i9_-.js" as="script"><link rel="prefetch" href="/assets/index.html-DJWGPdoR.js" as="script"><link rel="prefetch" href="/assets/index.html-BdRYsKQu.js" as="script"><link rel="prefetch" href="/assets/index.html-CHTqyB-v.js" as="script"><link rel="prefetch" href="/assets/index.html-D84ZP8yX.js" as="script"><link rel="prefetch" href="/assets/index.html-C6MbZCRK.js" as="script"><link rel="prefetch" href="/assets/index.html-DwY0dk3M.js" as="script"><link rel="prefetch" href="/assets/index.html-ROhXljy6.js" as="script"><link rel="prefetch" href="/assets/index.html-uAFKsbNL.js" as="script"><link rel="prefetch" href="/assets/index.html-DKf0Tl5k.js" as="script"><link rel="prefetch" href="/assets/index.html-BckIYMxk.js" as="script"><link rel="prefetch" href="/assets/index.html-D89Kzv86.js" as="script"><link rel="prefetch" href="/assets/index.html-BAeQs1ZT.js" as="script"><link rel="prefetch" href="/assets/index.html-DzzVa9mG.js" as="script"><link rel="prefetch" href="/assets/index.html-DS8LAvsR.js" as="script"><link rel="prefetch" href="/assets/index.html-BZZhl_tH.js" as="script"><link rel="prefetch" href="/assets/index.html-GJWuFs5z.js" as="script"><link rel="prefetch" href="/assets/index.html-C2ll7FU3.js" as="script"><link rel="prefetch" href="/assets/index.html-CGU2NEY7.js" as="script"><link rel="prefetch" href="/assets/index.html-cLg-eH4C.js" as="script"><link rel="prefetch" href="/assets/index.html-CcPvtjkp.js" as="script"><link rel="prefetch" href="/assets/index.html-CqiBSAvD.js" as="script"><link rel="prefetch" href="/assets/index.html-DdBac-H0.js" as="script"><link rel="prefetch" href="/assets/index.html-a8SxOw2I.js" as="script"><link rel="prefetch" href="/assets/index.html-BYQCbgEA.js" as="script"><link rel="prefetch" href="/assets/index.html-C9aYzQuR.js" as="script"><link rel="prefetch" href="/assets/index.html-aKf7WuLy.js" as="script"><link rel="prefetch" href="/assets/index.html-DVOfT7p0.js" as="script"><link rel="prefetch" href="/assets/index.html-B9zbzvlc.js" as="script"><link rel="prefetch" href="/assets/index.html-CSxNH61e.js" as="script"><link rel="prefetch" href="/assets/index.html-Bg7Vbf3W.js" as="script"><link rel="prefetch" href="/assets/index.html-DTZvfDLf.js" as="script"><link rel="prefetch" href="/assets/index.html-CWO3atJD.js" as="script"><link rel="prefetch" href="/assets/index.html-DPUjG7_f.js" as="script"><link rel="prefetch" href="/assets/index.html-BGsBALD6.js" as="script"><link rel="prefetch" href="/assets/index.html-CxnFIh6u.js" as="script"><link rel="prefetch" href="/assets/index.html-d0wOm0gW.js" as="script"><link rel="prefetch" href="/assets/index.html-BYfSOtzR.js" as="script"><link rel="prefetch" href="/assets/index.html-BMW-Xusm.js" as="script"><link rel="prefetch" href="/assets/index.html-L7hMHVgd.js" as="script"><link rel="prefetch" href="/assets/index.html-DGeEJg1U.js" as="script"><link rel="prefetch" href="/assets/index.html-t1jfxC7-.js" as="script"><link rel="prefetch" href="/assets/index.html-94caJ2GG.js" as="script"><link rel="prefetch" href="/assets/index.html-6eAyFDhR.js" as="script"><link rel="prefetch" href="/assets/index.html-CJ8FBN8U.js" as="script"><link rel="prefetch" href="/assets/index.html-CiFVKFXc.js" as="script"><link rel="prefetch" href="/assets/index.html--FA_dfnw.js" as="script"><link rel="prefetch" href="/assets/index.html-B9suxAOV.js" as="script"><link rel="prefetch" href="/assets/index.html-CqgAaVjh.js" as="script"><link rel="prefetch" href="/assets/index.html-DeuTi28Q.js" as="script"><link rel="prefetch" href="/assets/index.html-CX14MgVd.js" as="script"><link rel="prefetch" href="/assets/index.html-BqWk4rxJ.js" as="script"><link rel="prefetch" href="/assets/index.html-B_QSDDWp.js" as="script"><link rel="prefetch" href="/assets/index.html-BqoAtoir.js" as="script"><link rel="prefetch" href="/assets/index.html-DbUSaOC2.js" as="script"><link rel="prefetch" href="/assets/index.html-Bw2FAyge.js" as="script"><link rel="prefetch" href="/assets/index.html-0HwgbUdg.js" as="script"><link rel="prefetch" href="/assets/index.html-Bm5y0bQf.js" as="script"><link rel="prefetch" href="/assets/index.html-phSi5h-E.js" as="script"><link rel="prefetch" href="/assets/index.html-BwrRGUr3.js" as="script"><link rel="prefetch" href="/assets/index.html-DFg1GzOI.js" as="script"><link rel="prefetch" href="/assets/index.html-Da1r7YZ8.js" as="script"><link rel="prefetch" href="/assets/index.html-COVRUaoq.js" as="script"><link rel="prefetch" href="/assets/index.html-B8xt53x4.js" as="script"><link rel="prefetch" href="/assets/index.html-DppdjxG4.js" as="script"><link rel="prefetch" href="/assets/index.html-BwTQ67XH.js" as="script"><link rel="prefetch" href="/assets/index.html-DJxGmcLd.js" as="script"><link rel="prefetch" href="/assets/index.html-DRV3rd1S.js" as="script"><link rel="prefetch" href="/assets/index.html-W0k9EUwB.js" as="script"><link rel="prefetch" href="/assets/index.html-CVfFsDxb.js" as="script"><link rel="prefetch" href="/assets/index.html-CTTE8Ous.js" as="script"><link rel="prefetch" href="/assets/index.html-B_d8f9DU.js" as="script"><link rel="prefetch" href="/assets/index.html-DMwbGAaR.js" as="script"><link rel="prefetch" href="/assets/index.html-CG4FoKOz.js" as="script"><link rel="prefetch" href="/assets/index.html-86IW-qOD.js" as="script"><link rel="prefetch" href="/assets/index.html-B6MUn9xJ.js" as="script"><link rel="prefetch" href="/assets/index.html-DQFUcwO_.js" as="script"><link rel="prefetch" href="/assets/index.html-CE2gKjZt.js" as="script"><link rel="prefetch" href="/assets/index.html-CHp4y7lp.js" as="script"><link rel="prefetch" href="/assets/index.html-OZz3tjwO.js" as="script"><link rel="prefetch" href="/assets/index.html-CC_kSzJn.js" as="script"><link rel="prefetch" href="/assets/index.html-C630PjQG.js" as="script"><link rel="prefetch" href="/assets/index.html-D9xeya4k.js" as="script"><link rel="prefetch" href="/assets/index.html-BjUMoVSh.js" as="script"><link rel="prefetch" href="/assets/index.html-R2XJFCgE.js" as="script"><link rel="prefetch" href="/assets/index.html-8uimPZps.js" as="script"><link rel="prefetch" href="/assets/index.html-KqEh3t_8.js" as="script"><link rel="prefetch" href="/assets/index.html-C-XoQod0.js" as="script"><link rel="prefetch" href="/assets/index.html-BtKGvpv0.js" as="script"><link rel="prefetch" href="/assets/index.html-BGJFqhez.js" as="script"><link rel="prefetch" href="/assets/index.html-B7akMn8U.js" as="script"><link rel="prefetch" href="/assets/index.html-D29nmUyW.js" as="script"><link rel="prefetch" href="/assets/index.html-CB9qc_VD.js" as="script"><link rel="prefetch" href="/assets/index.html-HM_mbZBS.js" as="script"><link rel="prefetch" href="/assets/index.html-BcBVocr2.js" as="script"><link rel="prefetch" href="/assets/index.html-BVXfX63v.js" as="script"><link rel="prefetch" href="/assets/index.html-_0iNwwx7.js" as="script"><link rel="prefetch" href="/assets/index.html-DZefcGnA.js" as="script"><link rel="prefetch" href="/assets/index.html-nHTUMKOf.js" as="script"><link rel="prefetch" href="/assets/index.html-CTCtAE54.js" as="script"><link rel="prefetch" href="/assets/index.html-CiDkkxGa.js" as="script"><link rel="prefetch" href="/assets/index.html-BNWRJbtX.js" as="script"><link rel="prefetch" href="/assets/index.html-B4rCddsR.js" as="script"><link rel="prefetch" href="/assets/index.html-uAd82vDu.js" as="script"><link rel="prefetch" href="/assets/index.html-DhSNe5Lk.js" as="script"><link rel="prefetch" href="/assets/index.html-DRECupEk.js" as="script"><link rel="prefetch" href="/assets/index.html-Bp8p91Kz.js" as="script"><link rel="prefetch" href="/assets/index.html-CMNdyPuc.js" as="script"><link rel="prefetch" href="/assets/index.html-DUSG03BZ.js" as="script"><link rel="prefetch" href="/assets/index.html-DQsRCUFX.js" as="script"><link rel="prefetch" href="/assets/index.html-CzJMtlgG.js" as="script"><link rel="prefetch" href="/assets/index.html-aQMkp9ov.js" as="script"><link rel="prefetch" href="/assets/index.html-HXXbq0nG.js" as="script"><link rel="prefetch" href="/assets/index.html-BI_2KMRc.js" as="script"><link rel="prefetch" href="/assets/index.html-ClA60xAr.js" as="script"><link rel="prefetch" href="/assets/index.html-C33p1ILR.js" as="script"><link rel="prefetch" href="/assets/index.html-CPWAGu3q.js" as="script"><link rel="prefetch" href="/assets/index.html-5C6gbnHu.js" as="script"><link rel="prefetch" href="/assets/index.html-CjGwsJqc.js" as="script"><link rel="prefetch" href="/assets/index.html-DOIpJiFR.js" as="script"><link rel="prefetch" href="/assets/index.html-BYQtNKKO.js" as="script"><link rel="prefetch" href="/assets/index.html-fQyvYIXE.js" as="script"><link rel="prefetch" href="/assets/index.html-C6IEe0bw.js" as="script"><link rel="prefetch" href="/assets/index.html-BpYP-Ndy.js" as="script"><link rel="prefetch" href="/assets/index.html-BBusjUzS.js" as="script"><link rel="prefetch" href="/assets/index.html-DOxtKZhq.js" as="script"><link rel="prefetch" href="/assets/index.html-Czx7rByq.js" as="script"><link rel="prefetch" href="/assets/index.html-oMa62Fcv.js" as="script"><link rel="prefetch" href="/assets/index.html-DgQPMydX.js" as="script"><link rel="prefetch" href="/assets/index.html-D4WsHC0a.js" as="script"><link rel="prefetch" href="/assets/index.html-RAY5-1yy.js" as="script"><link rel="prefetch" href="/assets/index.html-DHeWCMGQ.js" as="script"><link rel="prefetch" href="/assets/index.html-Zuka5L2h.js" as="script"><link rel="prefetch" href="/assets/index.html-x9zicZnH.js" as="script"><link rel="prefetch" href="/assets/index.html-MflYCvWK.js" as="script"><link rel="prefetch" href="/assets/index.html-DXWH2Nnq.js" as="script"><link rel="prefetch" href="/assets/index.html-CAKO1aWO.js" as="script"><link rel="prefetch" href="/assets/index.html-CfxbkWXT.js" as="script"><link rel="prefetch" href="/assets/index.html-Bv534cS6.js" as="script"><link rel="prefetch" href="/assets/index.html-BcfC8z74.js" as="script"><link rel="prefetch" href="/assets/index.html-BgFvpgHk.js" as="script"><link rel="prefetch" href="/assets/index.html-BioAnjuT.js" as="script"><link rel="prefetch" href="/assets/index.html-f19Eq93d.js" as="script"><link rel="prefetch" href="/assets/index.html-C5qggShB.js" as="script"><link rel="prefetch" href="/assets/index.html-vIIRg_8v.js" as="script"><link rel="prefetch" href="/assets/404.html-BWyQ6jgd.js" as="script"><link rel="prefetch" href="/assets/index.html-DuwxUrhk.js" as="script"><link rel="prefetch" href="/assets/index.html-CkmjeSkc.js" as="script"><link rel="prefetch" href="/assets/index.html-BVB7a3en.js" as="script"><link rel="prefetch" href="/assets/index.html-CLHkfgjg.js" as="script"><link rel="prefetch" href="/assets/photoswipe.esm-GXRgw7eJ.js" as="script"><link rel="prefetch" href="/assets/index-DWGeGWcS.js" as="script"><link rel="prefetch" href="/assets/giscus-C26m1eXs.js" as="script"></head><body><div id="app"><!--[--><div class="theme-plume vp-layout" vp-container data-v-c8f55ec4><!--[--><!--[--><!--]--><!--[--><span tabindex="-1" data-v-c80bd037></span><a href="#VPContent" class="vp-skip-link visually-hidden" data-v-c80bd037> Skip to content </a><!--]--><!----><div class="vp-nav" data-v-c8f55ec4 data-v-447fab1c><div class="vp-navbar" vp-navbar data-v-447fab1c data-v-51690a7c><div class="wrapper" data-v-51690a7c><div class="container" data-v-51690a7c><div class="title" data-v-51690a7c><div class="vp-navbar-title" data-v-51690a7c data-v-7cd97fd8><a class="vp-link link title" href="/" data-v-7cd97fd8 data-v-e50178cc><!--[--><!--[--><!--]--><!--[--><!--[--><!--[--><img class="vp-image dark logo" src="/logo.png" alt data-v-801ebdfa><!--]--><!--[--><img class="vp-image light logo" src="/logo.png" alt data-v-801ebdfa><!--]--><!--]--><!--]--><span data-v-7cd97fd8>ross.dev</span><!--[--><!--]--><!--]--><!----></a></div></div><div class="content" data-v-51690a7c><div class="content-body" data-v-51690a7c><!--[--><!--]--><div class="vp-navbar-search search" data-v-51690a7c><!--[--><div id="docsearch-container" style="display:none;"></div><div><button type="button" class="DocSearch DocSearch-Button" aria-label="搜索文档"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">搜索文档</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"><svg width="15" height="15" class="DocSearch-Control-Key-Icon"><path d="M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953" stroke-width="1.2" stroke="currentColor" fill="none" stroke-linecap="square"></path></svg></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="vp-navbar-menu menu" data-v-51690a7c data-v-7aefeadc><span id="main-nav-aria-label" class="visually-hidden" data-v-7aefeadc>Main Navigation</span><!--[--><!--[--><a class="vp-link link navbar-menu-link active" href="/" tabindex="0" data-v-7aefeadc data-v-8283bb23 data-v-e50178cc><!--[--><span class="vp-icon vpi-7a8q75cb" style="" data-v-8283bb23 data-v-128b5cc2></span><span data-v-8283bb23>首页</span><!--]--><!----></a><!--]--><!--[--><a class="vp-link link navbar-menu-link" href="/blog/" tabindex="0" data-v-7aefeadc data-v-8283bb23 data-v-e50178cc><!--[--><span class="vp-icon vpi-pyak54qh" style="" data-v-8283bb23 data-v-128b5cc2></span><span data-v-8283bb23>博客</span><!--]--><!----></a><!--]--><!--[--><a class="vp-link link navbar-menu-link" href="/projects/" tabindex="0" data-v-7aefeadc data-v-8283bb23 data-v-e50178cc><!--[--><span class="vp-icon vpi-oc4astya" style="" data-v-8283bb23 data-v-128b5cc2></span><span data-v-8283bb23>Projects</span><!--]--><!----></a><!--]--><!--[--><div class="vp-flyout vp-navbar-menu-group" data-v-7aefeadc data-v-6a8af555><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-6a8af555><span class="text" data-v-6a8af555><span class="vp-icon vpi-gaju24u5" style="" data-v-6a8af555 data-v-128b5cc2></span><!----><span data-v-6a8af555>Backend</span><span class="vpi-chevron-down text-icon" data-v-6a8af555></span></span></button><div class="menu" data-v-6a8af555><div class="vp-menu" data-v-6a8af555 data-v-5d4c50f4><div class="items" data-v-5d4c50f4><!--[--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/es/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-xikl2z8d" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>Elasticsearch</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/elk/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-xikl2z8d" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>logstash,Kibana</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/interview-question/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-xikl2z8d" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>前端面试题</i><!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="vp-flyout vp-navbar-menu-group" data-v-7aefeadc data-v-6a8af555><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-6a8af555><span class="text" data-v-6a8af555><span class="vp-icon vpi-gaju24u5" style="" data-v-6a8af555 data-v-128b5cc2></span><!----><span data-v-6a8af555>笔记</span><span class="vpi-chevron-down text-icon" data-v-6a8af555></span></span></button><div class="menu" data-v-6a8af555><div class="vp-menu" data-v-6a8af555 data-v-5d4c50f4><div class="items" data-v-5d4c50f4><!--[--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/learn-ai/" data-v-72059b4e data-v-e50178cc><!--[--><!----><i data-v-72059b4e>AI学习简记</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/defensive-css/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-ho3ucxsj" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>防御性CSS</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/interview-question/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-xikl2z8d" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>前端面试题</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/type-challenges/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-l5o7twsk" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>type-challenges</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/learn-rust/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-4bplqobj" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>Rust学习简记</i><!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="vp-flyout vp-navbar-menu-group" data-v-7aefeadc data-v-6a8af555><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-6a8af555><span class="text" data-v-6a8af555><span class="vp-icon vpi-d1cekuwh" style="" data-v-6a8af555 data-v-128b5cc2></span><!----><span data-v-6a8af555>更多</span><span class="vpi-chevron-down text-icon" data-v-6a8af555></span></span></button><div class="menu" data-v-6a8af555><div class="vp-menu" data-v-6a8af555 data-v-5d4c50f4><div class="items" data-v-5d4c50f4><!--[--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/ebooks/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-6ju992yy" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>书籍推荐</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/sites-collect/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-cf2fqc0r" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>站点导航</i><!--]--><!----></a></div><!--]--><!--[--><div class="vp-menu-link" data-v-5d4c50f4 data-v-72059b4e><a class="vp-link link" href="/cli/" data-v-72059b4e data-v-e50178cc><!--[--><span class="vp-icon vpi-358a90rp" style="" data-v-72059b4e data-v-128b5cc2></span><i data-v-72059b4e>Command-Line Interface</i><!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><!----><div class="vp-navbar-appearance appearance" data-v-51690a7c data-v-68b69616><button class="vp-switch vp-switch-appearance" type="button" role="switch" title aria-checked="false" data-v-68b69616 data-v-1cef2186 data-v-605a1b6d><span class="check" data-v-605a1b6d><span class="icon" data-v-605a1b6d><!--[--><span class="vpi-sun sun" data-v-1cef2186></span><span class="vpi-moon moon" data-v-1cef2186></span><!--]--></span></span></button></div><div class="vp-social-links vp-navbar-social-links social-links" data-v-51690a7c data-v-79476c59 data-v-38b058e4><!--[--><a class="vp-social-link no-icon" href="https://github.com/ross-dev2024" aria-label="github" target="_blank" rel="noopener" data-v-38b058e4 data-v-dea96bb6><span class="vpi-social-github" /></a><a class="vp-social-link no-icon" href="https://discord.gg/ZPV9tQyRuh" aria-label="discord" target="_blank" rel="noopener" data-v-38b058e4 data-v-dea96bb6><span class="vpi-social-discord" /></a><!--]--></div><div class="vp-flyout vp-navbar-extra extra" data-v-51690a7c data-v-00e23d5f data-v-6a8af555><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-6a8af555><span class="vpi-more-horizontal icon" data-v-6a8af555></span></button><div class="menu" data-v-6a8af555><div class="vp-menu" data-v-6a8af555 data-v-5d4c50f4><!----><!--[--><!--[--><!----><div class="group" data-v-00e23d5f><div class="item appearance" data-v-00e23d5f><p class="label" data-v-00e23d5f>外观</p><div class="appearance-action" data-v-00e23d5f><button class="vp-switch vp-switch-appearance" type="button" role="switch" title aria-checked="false" data-v-00e23d5f data-v-1cef2186 data-v-605a1b6d><span class="check" data-v-605a1b6d><span class="icon" data-v-605a1b6d><!--[--><span class="vpi-sun sun" data-v-1cef2186></span><span class="vpi-moon moon" data-v-1cef2186></span><!--]--></span></span></button></div></div></div><div class="group" data-v-00e23d5f><div class="item social-links" data-v-00e23d5f><div class="vp-social-links social-links-list" data-v-00e23d5f data-v-38b058e4><!--[--><a class="vp-social-link no-icon" href="https://github.com/ross-dev2024" aria-label="github" target="_blank" rel="noopener" data-v-38b058e4 data-v-dea96bb6><span class="vpi-social-github" /></a><a class="vp-social-link no-icon" href="https://discord.gg/ZPV9tQyRuh" aria-label="discord" target="_blank" rel="noopener" data-v-38b058e4 data-v-dea96bb6><span class="vpi-social-discord" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="vp-navbar-hamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="nav-screen" data-v-51690a7c data-v-eac98d23><span class="container" data-v-eac98d23><span class="top" data-v-eac98d23></span><span class="middle" data-v-eac98d23></span><span class="bottom" data-v-eac98d23></span></span></button></div></div></div></div><div class="divider" data-v-51690a7c><div class="divider-line" data-v-51690a7c></div></div></div><!----></div><!----><!----><!--[--><div id="VPContent" vp-content class="vp-content is-home" data-v-c8f55ec4 data-v-ea9812fb><div class="vp-home" data-v-ea9812fb data-v-5b6b1319><!--[--><div class="" data-v-5b6b1319><div class="vp-home-banner" style="background-image:url(https://api.pengzhanbo.cn/wallpaper/bing);" data-v-5b6b1319 data-v-f84dcfb4><div class="banner-mask" style="opacity:0.1;" data-v-f84dcfb4></div><div class="container" data-v-f84dcfb4><div class="content" data-v-f84dcfb4><h2 class="hero-name" data-v-f84dcfb4>ross.dev</h2><p class="hero-tagline" data-v-f84dcfb4><span class="line" data-v-f84dcfb4></span> <span data-v-f84dcfb4>full-stack engineer</span></p><p class="hero-text" data-v-f84dcfb4>Our greatest glory is not in never falling, but in rising every time we fall.</p><div class="actions" data-v-f84dcfb4><!--[--><div class="action" data-v-f84dcfb4><a class="vp-button medium brand" href="/blog/" data-v-f84dcfb4 data-v-70c177de>blog</a></div><div class="action" data-v-f84dcfb4><a class="vp-button medium alt" href="https://github.com/ross-dev2024" target="_blank" rel="noreferrer" data-v-f84dcfb4 data-v-70c177de>Github</a></div><!--]--></div></div></div></div></div><div class="" data-v-5b6b1319><div class="vp-home-box vp-home-custom" style="" data-v-5b6b1319><!--[--><!--]--><div class="container"><!--[--><div class="vp-doc" vp-content><h2 style="text-align:center;margin:32px 0 32px;">开源项目</h2><div class="vp-card-grid cols-1" style="grid-template-columns:repeat(1, 1fr);" data-v-1db470a8><!--[--><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!----><!--]--></div></div><!--]--></div><!--[--><!--]--></div></div><!--]--></div></div><!--]--><button style="display:none;" type="button" class="vp-back-to-top" aria-label="back to top" data-v-c8f55ec4 data-v-8dee86a8><span class="percent" data-v-8dee86a8>0%</span><span class="show icon vpi-back-to-top" data-v-8dee86a8></span><svg aria-hidden="true" data-v-8dee86a8><circle cx="50%" cy="50%" style="stroke-dasharray:calc(0% - 12.566370614359172px) calc(314.1592653589793% - 12.566370614359172px);" data-v-8dee86a8></circle></svg></button><footer class="vp-footer" vp-footer data-v-c8f55ec4 data-v-e8945e23><div class="container" data-v-e8945e23><p class="message" data-v-e8945e23>Power by <a target="_blank" href="https://v2.vuepress.vuejs.org/">VuePress</a> & <a target="_blank" href="https://theme-plume.vuejs.press">vuepress-theme-plume</a></p><p class="copyright" data-v-e8945e23>Copyright © 2024-present ross.dev</p></div></footer><!--[--><!--]--><!--]--></div><!--[--><!--]--><!--]--></div><script type="module" src="/assets/app-CoYBJm5w.js" defer></script></body></html>