摘要:構建文件清理構建目錄下的文件打包工具編譯文件模板函數編譯與配合使用入口處理項目中的不同類型的模塊。
前言
之前有寫了一篇webpack的文章(認識篇) 猛戳,大家對于webpack基本概念(entry,output,loader,plugin,mode...)應該是有了較模糊的認識.今天希望在通過(對于vue-cli的效仿)搭建一個自己的腳手架的途中對于概念會有更深刻的認識.目錄
1:搭建自己的項目模板(template) (基于vue的模板)
2:生成對應的init命令,也就是腳手架構建命令以及上傳NPM包 , 方便之后模板的使用 (分開倆篇來講,方便你我 下一篇見)
一: 模板構建先來個雞湯 (這是個什么玩意啊怎么這么簡單,我沒問題分分鐘掌握它) 擺正心態 那么follow me !!!
初步構建mkdir my-vue-cli && cd my-vue-cli // 新建一個文件 并進入更目錄 `mkdir 是linux命令` npm init -y // 初始一個packjage.json文件 -y 表示跳過詢問步驟...
完善項目結構
//生成如下目錄 ├── src //源目錄(輸入目錄) │?? ├── index.js │?? ├── app.vue + |── index.html ├── package.json |── webpack.config.js //webpack配置文件
下載所需要的依賴(不太清楚的依次會介紹一下)
npm install --save-dev vue
基于vue的那么vue必不可少...不多介紹
npm install --save-dev webpack
基于webpack的那么webpack也必不可少...不多介紹
npm install --save-dev webpack-cli
webpack version 4+ 需要下載webpack-cli(一些指令下文可能涉及到)
npm install --save-dev path
path 模塊提供了一些工具函數,用于處理文件與目錄的路徑。
npm install --save-dev html-webpack-plugin
簡化了HTML文件的創建 Plugin that simplifies creation of HTML files to serve your bundles
` npm install --save-dev clean-webpack-plugin
用于構建時清理構建文件夾下的內容 A webpack plugin to remove/clean your build folder(s) before building
npm install --save-dev vue-loader
Vue.js組件加載器(插件)
npm install --save-dev vue-template-compiler
對于模板的函數編譯 與vue-loader 配合使用
npm install --save-dev webpack-dev-server
熱更新需要搭建服務模塊
npm install --save-dev style-loader css-loader
css樣式處理器
項目代碼構建
src/index.js
import Vue from "vue" // 引入vue模塊 import App from "./app.vue" //引入文件(組件) app new Vue({ //vue寫法 新建一個實例 el:"#app", //元素 template:"", // 模板使用標簽 components:{App} // 組件app })
src/app.vue
vue-cli-test vue-cli-test vue-cli-test
{{msg}}
webpack.config.js
const path = require("path"); //path 模塊提供了一些工具函數,用于處理文件與目錄的路徑。 const HtmlWebpackPlugin = require("html-webpack-plugin"); //構建html文件 const CleanWebpackPlugin = require("clean-webpack-plugin"); // 清理構建目錄下的文件 const webpack = require("webpack"); //webpack打包工具 const VueLoaderPlugin = require("vue-loader/lib/plugin"); // vue-loader 編譯vue文件 const compiler = require("vue-template-compiler") // 模板函數編譯 與vue-loader配合使用 module.exports = { entry: { //入口 "app":"./src/index.js" }, module:{ //處理項目中的不同類型的模塊。 rules:[ // rules 各種規則(數組類型) 每個規則可以分為三部分 - 條件(condition),結果(result)和嵌套規則(nested rule) { test:/.css/, use: ["style-loader", "css-loader"] // style-loader 和css-loader 編譯css處理 }, { test: /.vue$/, loader: "vue-loader" //vue-loader 編譯vue模塊 } ] }, devtool: "inline-source-map", //生曾map 映射對應代碼 方便錯誤查詢 devServer:{ contentBase: "./dist", // 告訴服務從哪提供代碼內容(靜態文件這么使用) hot:true //hot模式開啟 }, plugins:[ new CleanWebpackPlugin(["dist"]), // 告訴清理插件的目錄 new HtmlWebpackPlugin({ // 構建html filename:"index.html", //文件名 title:"my-vue-cli", //title template:"./index.html", //參照模板樣式 }), new webpack.HotModuleReplacementPlugin(), //熱模塊替換開啟 new VueLoaderPlugin() //vue-loader插件開啟 ], output: { //出口 filename: "index.js", //文件名 path: path.resolve(__dirname, "dist"), //路徑 publicPath:"" //srcript 引入路徑 }, resolve:{ //引入路徑是不用寫對應的后綴名 extensions: [".js", ".vue", ".json"], alias:{ //正在使用的是vue的運行時版本,而此版本中的編譯器時不可用的,我們需要把它切換成運行時 + 編譯的版本 "vue$":"vue/dist/vue.esm.js", //用@直接指引到src目錄下 "@": path.resolve(__dirname,"./src"), } }, };
package.json添加script命令
"scripts": { "test": "echo "Error: no test specified" && exit 1", "watch": "webpack --watch", "dev": "webpack-dev-server --open --hot", "build": "webpack" },
npm run dev 運行于8080/可看到預期效果.
npm run build 打包編譯同樣可以看到效果 skr~~~~~~~~~
github代碼倉庫,猛戳
結尾本篇只是介紹基于vue,webpack的vue-cli簡易搭建(因為init構建命令這些說好講是好講,但是講太粗怕大家不太明白,那不如多帶帶拿一篇出來讓大家看),根據本文大家可以根據需求進行完善搞一個自己的腳手架.之后用自己的開發..是不是想想挺美~~ 快去行動吧.想提前看看構建命令效果的同學 > git倉庫
ps:(有我講的不明白的地方,評論區見.我來完善)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/99204.html
摘要:五六月份推薦集合查看最新的請點擊集前端最近很火的框架資源定時更新,歡迎一下。蘇幕遮燎沈香宋周邦彥燎沈香,消溽暑。鳥雀呼晴,侵曉窺檐語。葉上初陽乾宿雨,水面清圓,一一風荷舉。家住吳門,久作長安旅。五月漁郎相憶否。小楫輕舟,夢入芙蓉浦。 五、六月份推薦集合 查看github最新的Vue weekly;請::點擊::集web前端最近很火的vue2框架資源;定時更新,歡迎 Star 一下。 蘇...
摘要:五六月份推薦集合查看最新的請點擊集前端最近很火的框架資源定時更新,歡迎一下。蘇幕遮燎沈香宋周邦彥燎沈香,消溽暑。鳥雀呼晴,侵曉窺檐語。葉上初陽乾宿雨,水面清圓,一一風荷舉。家住吳門,久作長安旅。五月漁郎相憶否。小楫輕舟,夢入芙蓉浦。 五、六月份推薦集合 查看github最新的Vue weekly;請::點擊::集web前端最近很火的vue2框架資源;定時更新,歡迎 Star 一下。 蘇...
摘要:前言隨我來去看看為時未晚第一版較淺顯的知識懂得可忽略本文方向安裝起步搭建運行粗略代過對于資源的管理對于輸出的管理舉例介紹本地開發基礎服務熱更新模塊熱替換初步認識初步構建新建一個文件并進入更目錄是命令初始一個文件表示跳過詢問步驟安裝 前言 隨我來,去看看webpack!(為時未晚)============》第一版(較淺顯的知識,懂得可忽略本文) 方向 安裝,起步搭建運行. (粗略代...
摘要:平日學習接觸過的網站積累,以每月的形式發布。年以前看這個網址概況在線地址前端開發群月報提交原則技術文章新的為主。 平日學習接觸過的網站積累,以每月的形式發布。2017年以前看這個網址:http://www.kancloud.cn/jsfron... 概況 在線地址:http://www.kancloud.cn/jsfront/month/82796 JS前端開發群月報 提交原則: 技...
閱讀 1413·2021-11-22 09:34
閱讀 1383·2021-09-22 14:57
閱讀 3416·2021-09-10 10:50
閱讀 1396·2019-08-30 15:54
閱讀 3695·2019-08-29 17:02
閱讀 3478·2019-08-29 12:54
閱讀 2619·2019-08-27 10:57
閱讀 3324·2019-08-26 12:24