使用Vite打包項目用的JS和CSS 文件,改善開發體驗

    使用 Vite 打包我們的項目用 JS 和 CSS 代碼,可以讓我們通過模塊化方式來進行開發,還能享受到各種 npm 功能模塊帶來的好處。

    情景再現

    小恩在開發三個單頁(a.html,b.html,c.html),一開始,小恩為了方便,就給三個單頁,準備三個JS文件,a.js,b.js,c.js,分別在頁面中進行引入。

    但是,他知道,每一個網絡請求都是很寶貴的,為了進一步提升網頁加載速度,他每次開發完代碼后,就將這三個JS文件手動復制黏貼在一個 main.js 文件中,然后給三個頁面導入。

    但是業務需求一變再變,小恩在一次次復制黏貼中迷失自我, 而且,隨著這三個頁面用JS文件的代碼越來越多,每次開發時,小恩都要從256行跳轉到1262行,時不時還要通過搜索來查相關功能函數。

    這樣太不方便了。

    是時候用Vite來提升工作效率了!!!

    準備環境

    請通過以下教程安裝 Node ,掌握終端的基本操作,并配置cnpm

    然后打開控制終端(Shit+鼠標右鍵,選擇shell),輸入以下命令,讓我們下載文件更快

    npm install -g cnpm --registry=https://registry.npmmirror.com
    

    下面我會繼續使用?npm?來示范,但我更推薦您使用?cnpm?,這樣能更快。

    文件目錄

    在桌面上創建如下結構的項目文件夾

    ?project
    ?├── index.js
    ?├── package.json
    ?├── src
    ?│ ? ├── css
    ?│ ? │ ? ├── a.css
    ?│ ? │ ? └── b.css
    ?│ ? ├── js
    ?│ ? │ ? ├── a.js
    ?│ ? │ ? └── b.js
    ?│ ? ├── main.js
    ?│ ? └── style.css
    ?└── vite.config.js
    

    其中代碼的文件如下“

    Index.js

    ?//index.js
    ?//導入js文件
    ?import "./src/main.js";
    ?//導入css文件
    ?import "./src/style.css";
    ??
    

    main.js

    ?//main.js
    ?import "./js/a.js";
    ?import "./js/b.js";
    ?alert("不錯哦,加載了!");
    ??
    

    style.css

    ?/*style.css*/
    ?@import './css/a.css';
    ?@import './css/b.css';
    ?body{
    ? ? ?background-color: red;
    ?}
    ??
    

    package.json

    你可以通過中終端中執行以下命令,快速創建?package.json?文件

    ?npm init -y
    

    當然,您也可以直接使用我提供的文件

    ?{
    ? ?"name": "project",
    ? ?"version": "1.0.0",
    ? ?"description": "",
    ? ?"main": "index.js",
    ? ?"scripts": {
    ? ? ?"dev": "vite",
    ? ? ?"build": "vite build",
    ? ? ?"test": "echo "Error: no test specified" && exit 1"
    ?  },
    ? ?"keywords": [],
    ? ?"author": "",
    ? ?"license": "ISC"
    ?}
    ??
    

    添加了兩個npm快捷命令

    vite.config.js

    ?//vite.config.js
    ?const path = require("path");
    ??
    ?module.exports = {
    ? ?plugins: [],
    ? ?build: {
    ? ? ?rollupOptions: {
    ? ? ? ?input: path.resolve(__dirname, "./index.js"),
    ? ? ? ?output: {
    ? ? ? ? ?entryFileNames: "index.js",// 打包的文件名
    ? ? ? ? ?chunkFileNames: "[name].js",// 代碼分割后的文件名
    ? ? ? ? ?assetFileNames: "[name][extname]",// 資源文件的文件名
    ? ? ?  },
    ? ?  },
    ?  },
    ?};
    ??
    

    rollupOptions.input?表示入口文件路徑。

    進行開發

    您可以按照上述類似的代碼邏輯,撰寫自己的css和js文件,進行導入操作,然后運行以下命令對文件進行打包

    ?npm run build ? ? 
    

    打包后的結果如下:

    ?dist
    ? ? ├── index.css
    ? ? └── index.js
    

    現在,您只需要將這兩個文件導入您的頁面中,即可看到相關效果。

    當然,您還可以借助更多npm相關的工具進一步優化您的打包流程,如清理重復的css之類的。此處不再贅述。

    預覽開發

    若您想通過在當前項目的頁面上,開發css和js文件,快速驗證您的想法,您可以在項目目錄下新建index.html文件,寫入以下代碼

    ?<!DOCTYPE html>
    ?<html lang="en">
    ??
    ?<head>
    ? ? ?<meta charset="UTF-8">
    ? ? ?<meta http-equiv="X-UA-Compatible" content="IE=edge">
    ? ? ?<meta name="viewport" content="width=device-width, initial-scale=1.0">
    ? ? ?<title>頁面開發測試用首頁</title>
    ?</head>
    ??
    ??
    ?<body>
    ??
    ? ? ?<script type="module" src="/src/main.js"></script>
    ??
    ? ?  開始撰寫我的頁面代碼
    ? ? ?<div class="list">
    ? ? ? ?  5555
    ? ? ?</div>
    ?</body>
    ??
    ?</html>
    

    我們還需要修改main.js文件,引入我們的css文件。

    ?//main.js
    ?import "./js/a.js";
    ?import "./js/b.js";
    ?import "./style.css";
    ?alert("不錯哦,加載了!");
    ??
    

    現在,您可以在當前項目中運行以下命令

    ?npm run dev
    

    根據提示打開網址,即可在第一時間查看您的代碼效果。

    在開發完畢后,將打包后的文件載入頁面即可。

    最后

    現在,小恩開發項目就舒服多了,他根據不同的功能將代碼寫在不同的JS文件中,在線觀察效果,開發完畢后打包,代碼和注釋順便也壓縮了,在頁面中載入打包后的文件即可。
    大大提升了工作效率,可以早點回家吃晚飯咯!

    VUE模塊

    mockjs使用 - Vite

    2022-9-29 15:45:09

    VUE模塊

    01:實用至上主義的VUE3 - 單擊計數器

    2023-7-2 22:25:00

    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    0 條回復 A文章作者 M管理員
      暫無討論,說說你的看法吧
    ?
    個人中心
    購物車
    優惠劵
    今日簽到
    有新私信 私信列表
    搜索
    主站蜘蛛池模板: 国产成人AV区一区二区三| 天堂资源中文最新版在线一区| 国语精品一区二区三区| 丝袜人妻一区二区三区| 亚洲一区二区三区丝袜| 波多野结衣一区二区免费视频| 亚洲一区二区三区无码中文字幕| 日本在线视频一区二区| 国产av熟女一区二区三区| 波多野结衣精品一区二区三区 | 中文字幕永久一区二区三区在线观看| 欧美日本精品一区二区三区| 91福利一区二区| 又硬又粗又大一区二区三区视频| 小泽玛丽无码视频一区| 美女视频免费看一区二区 | 国产一区二区好的精华液| 人妻体内射精一区二区三四| 国产精品无码AV一区二区三区| 香蕉久久AⅤ一区二区三区| 国产suv精品一区二区6| 日本精品啪啪一区二区三区| 亚洲变态另类一区二区三区| 色噜噜狠狠一区二区三区| 亚洲一区二区三区在线| 国产精品免费一区二区三区四区| 久久精品道一区二区三区| 丝袜人妻一区二区三区网站| 亚洲一区日韩高清中文字幕亚洲 | 精品一区二区AV天堂| 国产精品综合一区二区| 无码人妻精品一区二区蜜桃| 亚洲大尺度无码无码专线一区| 老熟女高潮一区二区三区| 老熟妇高潮一区二区三区| 国产精品福利一区| 亚洲片一区二区三区| 亚洲日本一区二区三区| 人妻精品无码一区二区三区| 波多野结衣一区在线| 中文字幕乱码一区二区免费 |