当前位置: 首页 > Web前端 > HTML

说说我是如何用vite替换webpack的

时间:2023-03-27 23:36:56 HTML

鐨勫墠瑷€宸茬粡2202浜嗭紝vite涔熺畻鏄亶鍦板紑鑺憋紝杩欎袱骞村叧娉ㄥ害涔熸瘮杈冮珮銆傚師鍥犳槸webpack宸茬粡鑻︿簡寰堜箙锛涙帴涓嬫潵灏辨槸椤圭洰鐨勫悇绉嶆參锛坧s锛氳窇椤圭洰鐨勬椂鍊欏彲浠ュ幓鑼舵按闂存嬁鏉按鍥炴潵鍠濅竴浼氬効馃槶馃槶馃槶锛夎嚦浜庡師鍥狅紝鎬讳箣锛屽氨鏄痺ebpack闇€瑕佺储寮曟暣涓」鐩殑鏂囦欢锛岀紪璇戞垚涓€涓垨澶氫釜鍗曠嫭鐨刯s鏂囦欢锛泇ite鍦ㄦ祻瑙堝櫒璇锋眰鐩稿簲鐨刄RL鏃舵彁渚涚浉搴旂殑鏂囦欢銆傛洿璇︾粏鐨勫彲浠ョ湅涓€涓媣ite鐨勮嚜鑽愩€備笅闈㈠紑濮嬭繘鍏ユ棰?.淇敼椤圭洰閰嶇疆缁堢杈撳叆npmi-Dviteinstallvite淇敼pageage.json涓殑鐩稿叧鍛戒护"dev":"vite","build":"vitebuild","serve":"vitepreview","lint":"eslint--ext.js,.vue--ignore-path.gitignore--fixsrc"2銆傚湪鏍圭洰褰曞垱寤轰竴涓獀ite.config.js鏂囦欢import{defineConfig}from'vite'import{createVuePlugin}from'vite-plugin-vue2'importpathfrom'path'exportdefaultdefineConfig({base:'./',plugins:[createVuePlugin()],server:{open:true//鍚姩鍚庤嚜鍔ㄦ墦寮€娴忚鍣▆,resolve:{alias:[{find:'@',replacement:path.resolve(__dirname,'src')}//鍙互杩欐牱瀵煎叆.vue鏂囦欢锛屼絾鏄浘鐗囦細404{find:'/@',replacement:'src'},//瑙e喅鍥剧墖浣跨敤alias404,@瀛楃闇€瑕佸湪鏁板瓧鍓嶅姞'/'锛屼笉瑕佷娇鐢ㄧ粷瀵硅矾寰刔}})3.淇敼鐜鍙橀噺涓嶆敮鎸佸師鏉ョ殑process.env璁块棶vite涓殑鐜鍙橀噺銆傞渶瑕佹敼鎴恑mport.meta.env鎵嶈兘璁块棶锛屽湪.env鏂囦欢涓殑鍙橀噺涔熼渶瑕佹妸鍓嶇紑鏀规垚VITE_锛坧s锛氫篃鍙互鍦╲ite.config涓缃甧nvPrefix鏉ヨ嚜瀹氫箟鍓嶇紑锛夋瘮濡備互涓嬩唬鐮侊細VITE_APP_API_URL=/apiVITE_TITLE=title4銆傚湪vue-cli涓厤缃叏灞€css鍙橀噺鏄€熷姪style-resources-loader瀹炵幇鐨勫叏灞€鍙橀噺锛屽湪vite涓彲浠ョ洿鎺ラ€氳繃css.preprocessorOptions杩涜閰嶇疆css:{preprocessorOptions:{less:{additionalData:`@import'./src/assets/style/variables.less';`}}}5.淇敼index.html鏂囦欢鍏堝皢public鏂囦欢澶逛笅鐨刬ndex.html绉诲姩鍒版牴鐩綍涓嬶紝瀵煎叆src鐩綍涓嬬殑main.js鏂囦欢intoindex.html杩樻湁涓€涓槸vite榛樿涓嶆敮鎸乪js鐨勮娉曪紙ps锛氬叾瀹炴垜璇曡繃鐢╲ite-plugin-html鎻掍欢锛屼絾鏄惎鍔ㄤ細鎶ラ敊馃槢馃槢锛夛紝鍦ㄥ綋鍓嶉」鐩腑娌℃湁瀹為檯鎰忎箟锛屾墍浠ヤ篃娌℃湁澶ф儕灏忔€紝鏀规垚鍘熸潵鐨勫啓娉?favicon.ico">-<%=VUE_APP_NAME%>#鏇存敼涓轰互涓?+鏍囬瀹屾垚鍚庡畬鎴愪互涓婃楠わ紝灏卞彲浠ヨ緭鍏pmrundev鏉ヨ繍琛岄」鐩簡涓轰簡瑙e喅闂閬囧埌鐨勪竴浜涢棶棰?.涓嶆敮鎸乺equire閲嶅啓require鏂规硶瀵煎叆鍥剧墖//鍥犱负鍙湁鍥剧墖瀵煎叆杩樺湪浣跨敤require锛屾墍浠ュ彧鐢ㄤ簬鍥剧墖瀵煎叆window.require=url=>{if(typeofurl==='undefined')returnreturnnewURL(url,import.meta.url).href}閮ㄥ垎鎻掍欢鍔犺浇require锛岀粺涓€鏀逛负import寮曞叆//constCodeMirror=require('codemirror/lib/codemirror')//require('codemirror/addon/hint/show-hint')import*asCodeMirrorfrom'codemirror/lib/codemirror'import'codemirror/addon/hint/show-hint'2.TypeError:Failedtofetchdynamicallyimportedmodule鐨勫師鍥犳槸vite涓嶆敮鎸?vue鍚庣紑鐨勮瘑鍒€傚彧闇€鍦ㄥ鍏ョ粍浠剁殑鏂囦欢璺緞涓坊鍔?vue鍚庣紑鍗冲彲銆?/p>