webpack搭建腳手架打包TypeScript程式碼
阿新 • • 發佈:2021-09-22
建立資料夾
目錄結構: dabaots
初始化 npm init -y
生成package.on檔案
目錄結構:
dabaots
dabaots / package.json
然後在開發環境中安裝以下幾個工具
npm i -D
webpack(打包程式碼的核心工具
webpack-cli(webpack的命令列工具)
typescript (寫ts所需的核心包)
ts-loader (通過ts-loader可以對webpack和ts進行整合)
html-webpack-plugin … (是自動生成html的一個webpack外掛)
webpack-dev-server … (無需重新整理更新頁面)
"@babel/core" “@babel/preset-env” babel-loader core-js(安裝babel轉換,你是什麼環境他就會轉成什麼程式碼)
可能會遇到的小問題:這裡可能會出現的問題就是你下載的依賴包webpack-dev-server版本如果和谷歌的不適配,建議將外掛版本改低一點或者谷歌瀏覽器升級成最新版本否則會出現錯誤Cannot GET /chrome.exe
接下來建立webpack.config.js進行配置
目錄結構:
dabaots
dabaots / package.jsondabaots / webpack.config.js
// 引入一個包 const path = require("path") //引入自動生成html的包 const HtmlWebpackPlugin = require("html-webpack-plugin") //引入更新dist檔案的外掛 const {CleanWebpackPlugin} = require("clean-webpack-plugin") // webpack中的所有的配置資訊都應該寫入moudle.exports中 module.exports={ // 指定入口檔案 entry:"./src/index.ts",// 指定打包檔案所在目錄 output:{ // 指定打包檔案的目錄 path:path.resolve(__dirname,"dist"),// 指定打包後文件的檔案 filename:"bundle.js",//編譯的時候不使用箭頭函式 environment: { arrowFunction: false } },//webpack打包時要使用到module這個模組 module:{ // 指定要載入的規則 rules:[{ // test指定的http://www.cppcns.com是規則生效的檔案 test:/\.ts$/,// use是要使用的loader //配置babel use:[ {//指定載入器 loader:"babel-loader",options:{ //設定預定義環境 presets:[ [ //指定環境的外掛 "@babel/preset-env",FOzOcQZLyv //配置資訊 { http://www.cppcns.com //要相容的瀏覽器 targets:{ "chrome":"88" },// 指定corejs的版本 "corejs":"3",//表示按需載入 "useBuiltIns":"usage" } ] ] } },'ts-loader' ],//設定不被打包上傳的檔案 exclude:["/node_modules/"] }] },// 配置webpack外掛 plugins:[ new HtmlWebpackPlugin({ // 自定義html模板地址 template:"./src/index.html" }),//每次打包上線之前都會自動清空dist內的檔案如何重新生成最新的檔案 new CleanWebpackPlugin() ],resolve:{ //解決在ts檔案內部單獨引入其他ts包時候報錯的問題 extensions:['.ts','.js'] } }
最後在package.json中寫入打包及執行等
在終端npm run build
打包執行即可
打包成功後會自動生成一個dist檔案
npm run start
自動開啟谷歌瀏覽器且內容為熱更新的
到此這篇關於weFOzOcQZLyvbpack搭建腳手架打包TypeScript程式碼的文章就介紹到這了,更多相關webpack打包TypeScript程式碼內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!