比Gulp還要牛的Webpack

webpack
api:需要在服務器環境下,在你創建的文件夾根目錄中進行如下操作

1、在git bash上輸入:npm install webpack -g
2、在git bash上輸入:npm install webpack
3、在git bash上輸入:npm init 

之后會有package.json文件和node_modules文件

4、在根目錄創建index.html
5、書寫webpack.config.js文件
    module.exports = {
            entry:'./main.js',
            output:{
                path:__dirname,
                filename:'bundle.js'
         }
    }
main.js是需要放在根目錄下面的,是寫好了js需要壓縮打包的js文件
6、執行webpack 根目錄下會多出一個bundle.js
7、在index.html中引入bundle.js
8、頁面展示成功

9、在git bash上輸入:webpack --watch 可以監控目錄下的文件變化并實時重新構建
10、上面只是實時構建后我們如何把結果通知給瀏覽器頁面,讓HTML頁面上的bundle.js內容保持更新
11、在git bash上輸入:npm install webpack-dev-server -g
12、在git bash上輸入:webpack-dev-server
13、在git bash上輸入:webpack-dev-server --inline
14、在http://localhost:8080/index.html中就可以實時更新修改的內容了

15、如果想使用第三方庫需要借助npm,比如安裝一個jQuery
16、npm install jquery

17、如果想使用ES6引入某個es6模塊 比如:import $ from 'whatever'
18、目前瀏覽器只支持原生的僅支持CommonJS的寫法
19、但是我們可以通過babel-loader來加載es6模塊
20、在git bash上輸入:npm install babel-loader babel-core babel-preset-es2015 --save-dev
21、在webpack.config.js文件中在module.exports值中添加module
    module.exports = {
        entry:{
        app:['./main.js']
    },
        output:{
            filename:'bundle.js'
        },
    module:{
        loaders:[{
            test:/\.js$/,
            loaders:['babel?presets[]=es2015'],
            exclude:/node_modules/
        }]
    }
    }
22、這樣我們就可以在js文件中使用ES6語法,babel-loader負責翻譯

23、我們也可以不用link標簽引入CSS,而是通過webpack的style-loader和css-loader,
    前者將css文件以<style></style>標簽插入<head></head>頭部中,后者負責解讀、加載css文件
24、在git bash上輸入:npm install style-loader css-loader --save-dev
25、配置webpack.config.js文件
    {
    //...
    module:{
        loaders:[{
            {test:/\.css$/,loaders:['style','css']}     //如果有上面的文件直接以json的方式添加在loaders的數組中
        }]
    }
    }
26、在main.js文件中引入css
27、在main.js文件編寫添加 -->  import'./style/.css'     //css路徑

28、autoprefixer 據瀏覽器版本自動處理瀏覽器前綴
29、在git bash上輸入:npm install autoprefixer-loader --save-dev
30、配置webpack.config.js文件
    loaders:[{
            test:/\.css$/,
            loader:'style'!css!autoprefixer?{browsers:["last 2 version","> 1%"]}
        }]
31、重新啟動webpack-dev-server

the end

如果還是有還是不太清楚的地方可以給我留言哦

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 最近在學習 Webpack,網上大多數入門教程都是基于 Webpack 1.x 版本的,我學習 Webpack 的...
    My_Oh_My閱讀 8,201評論 40 247
  • 無意中看到zhangwnag大佬分享的webpack教程感覺受益匪淺,特此分享以備自己日后查看,也希望更多的人看到...
    小小字符閱讀 8,220評論 7 35
  • 在現在的前端開發中,前后端分離、模塊化開發、版本控制、文件合并與壓縮、mock數據等等一些原本后端的思想開始...
    Charlot閱讀 5,480評論 1 32
  • 我曾想過在炎熱的七月沉沉睡去 就像年邁的老人一樣 懼怕烙在心底關于死亡的陰影 剛滿月的貓咪一不留神 溺死在清晨的井...
    愛醬lll閱讀 339評論 29 12
  • 離開崠背崗多年后,我們重返故土尋覓當年的足跡,發現環繞崠背崗的渠道已經干涸,并且有些地段都已經被填平。此情...
    陳玉生閱讀 231評論 3 9