<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
為何要用::友好支援模組化、程式碼混淆、處理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> <script src="./index.js"></script> </head> <body> <h1>web pack測試</h1> <!-- vscode快捷方式:ul>li{第$個li}*10 --> <ul> <li>第1個li</li> <li>第2個li</li> <li>第3個li</li> <li>第4個li</li> <li>第5個li</li> <li>第6個li</li> <li>第7個li</li> <li>第8個li</li> <li>第9個li</li> <li>第10個li</li> </ul> </body> </html>
index.js
import $ from 'jquery' $(function(){ $('li:odd').css('backgroundColor','green');//odd偶數 $('li:even').css('backgroundColor','pink');//even奇數 })
執行報錯:
這就是相容性問題
使用webpack打包解決問題官網:https://www.webpackjs.com/
/** * webpack 組態檔 */ module.exports={ //偵錯時使用development開發模式 //打包時使用production生產模式 mode : 'development' }
組態檔部分屬性:
可進行設定:
/** * webpack 組態檔 */ const path=require('path'); module.exports={ //偵錯時使用development開發模式 //打包時使用production生產模式 mode : 'development', entry: path.join(__dirname,'./src/index.js'), //__dirname表示當前目錄當前路徑 output: { path: path.join(__dirname,'./dist'), filename:'bundle.js', },//出口 }
package.json
"scripts": { "dev": "webpack" },
目錄下多出資料夾dist,終端含有’successfully’表示打包成功!
測試
首先修改index.html引入的js包
<!--<script src="./index.js"></script>-->❌ <script src="../dist/main.js"></script>
執行:
表明webpack打包成功有效並且解決了相容性問題!!!
傳統都是用link參照
根據實際需要安裝對應的載入器
npm install less-loader -D (less載入器)
npm install sass-loader node-sass -D (sass載入器)
/** * webpack 組態檔 */ const path=require('path'); module.exports={ //偵錯時使用development開發模式 //打包時使用production生產模式 mode : 'development', entry: path.join(__dirname,'./src/index.js'), //__dirname表示當前目錄當前路徑 output: { path: path.join(__dirname,'./dist'), filename:'bundle.js', },//出口 devServer:{ static: './src' }, //新增內容css module:{ //處理css rules:[ //(規範)約束 {test:/.css$/,use:['style-loader','css-loader']}//正規表示式拓展名.css ] } }
css
#box{ width: 200px; height: 100px; background-color: greenyellow; }
index.js中加在上方(css的路徑要填寫正確)import './css/style.css'
index.html
<h1>CSS</h1> <div id="box">盒子</div>
成功!!!
由於每次更新程式碼都需要手動打包,這時我們要用上自動打包
①安裝 npm install webpack-dev-server -D
②修改package.json(使得視窗自動開啟並且自動打包)
"scripts": { "test": "echo "Error: no test specified" && exit 1", "dev": "webpack-dev-server --open --host 127.0.0.1 --port 9090" },
③修改webpack.config.js
devServer:{ static: './src' }
④html引入bundle.js
打包後的檔案都在根目錄下
<script src="/bundle.js"></script>
④執行驗證npm run dev
原理:伺服器上執行監聽,所以需要存取伺服器
直接存取即可,成功實現WebPack自動打包
本篇文章就到這裡了,希望能夠給你帶來幫助,也希望您能夠多多關注it145.com的更多內容!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45