vue-server-template
vue+express+webpack單頁應(yīng)用開發(fā)腳手架唬滑,包含vue客戶端和express服務(wù)端
git地址:vue+express+webpack稻艰,求star
webpack優(yōu)化點
1.引入happypack,實現(xiàn)webpack多線程打包连锯,顯著提高本地打包速度归苍;
2.引入webpack DllReferencePlugin摇展,提前打包公共代碼(polyfill和vue全家桶)盯孙,提高構(gòu)建速度骑晶;
3.支持less仔雷、sass脑融,支持postcss配置,自動引入polyfill(可刪除);
3.手動搭建webpack腳手架倦沧,脫離vue-cli,可自我根據(jù)需要自定義調(diào)整webpack配置展融;
4.一經(jīng)運行喝噪,即可同時運行客戶端和服務(wù)端指么,并針對dev和prod環(huán)境做區(qū)分系奉。dev環(huán)境使用webpack devServer中的express插槽萌踱,prod環(huán)境使用express static映射前端靜態(tài)文件
技術(shù)棧
webpack4 + Es6 + vue + express
運行
#下載工程
git clone https://github.com/HEJIN2016/vue-server-template
cd vue-server-template
#安裝依賴
npm install
#打包lib
npm run postinstall
#本地開發(fā)
npm run dev
#線上運行
npm start
#訪問地址
http://localhost:3200
npm腳本介紹
#打包lib(npm install時自動調(diào)用該鉤子)
npm run postinstall
#執(zhí)行webpack.dll.js园担,打包lib
npm run build-lib
#本地運行
npm run dev
#打包客戶端
npm run build-client
#client-server打包
npm run build-server
#使用pm2運行工程
npm run start-project
#線上運行工程
npm start
目錄結(jié)構(gòu)
├── build // webpack配置
│ ├── webpack.client.js // webpack client端打包配置
│ ├── webpack.dll.js // webpack DllPlugin打包配置
│ ├── webpack.server.js // webpack server端打包配置
├── lib // DllPlugin 相關(guān)lib
├── src // 源代碼
│ ├── client // client客戶端源代碼
│ │ ├── assets // 靜態(tài)資源
│ │ ├── components // 公用組件
│ │ ├── layout // 布局組件
│ │ ├── views // 頁面路由組件
│ │ ├── stores // store瀑踢,狀態(tài)管理
│ │ ├── tool // 通用公共函數(shù)
│ │ ├── index.html // html模板
│ │ ├── main.js // 入口
│ ├── server // server 源代碼
│ │ ├── app.js // pro環(huán)境下的server 入口
│ │ ├── devApp.js // dev環(huán)境下的server 入口
│ │ └── route.js // express路由中間件配置
├── static // 靜態(tài)文件目錄
├── babele.config.js // babel-loader 配置
├── config // 工程全局公共配置(port才避、host等)
├── postcss.config.js // postcss-loader 配置
├── .editorconfig // 編輯器配置
├── .gitignore // git 忽略項
├── package-lock.json // npm 鎖文件
├── package.json // npm 配置
├── pm2.json // pm2 入口
├── README.md // README 文檔