成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

webpack4 化繁為簡(二)

graf / 813人閱讀

摘要:書接上文,繼續(xù)干,配置一些常用的插件使支持壓縮插件默認(rèn)已經(jīng)有,所以只需要引入就可以使用在中配置生成將的目錄下面的移入目錄,并且刪除以及的引入標(biāo)簽,然后安裝包。在中添加后續(xù)抽空補上打包以及第三方插件的的配置。。。。。。

書接上文,繼續(xù)干,配置一些常用的插件使支持

uglifyjs js壓縮插件
webpack默認(rèn)已經(jīng)有uglifyjs,所以只需要引入就可以使用.
在webpack.config.js中配置:

const path=require("path");
const webpackDevServer=require("webpack-dev-server");
const extractTextWebpackPlugin=require("extract-text-webpack-plugin");
const uglify=require("uglifyjs-webpack-plugin");
module.exports={
    mode:"development",
    entry:[
        path.join(__dirname,"./src/entry.js"),
        path.join(__dirname,"./src/entry1.js"),
    ],
    output:{
        path:path.join(__dirname,"dist"),
        filename:"[name].js"
    },
    module:{
        rules:[
            {
                test:/.css$/,
                use:extractTextWebpackPlugin.extract({
                    fallback:"style-loader",
                    use: ["css-loader",]
                })
            }
        ]
    },
    plugins:[
        new extractTextWebpackPlugin({
            filename:"index.css"
        }),
        new uglify()
    ],
    devServer:{
        contentBase:path.join(__dirname,"dist"),
        host:"localhost",
        compress:true,
        port:8888
    }
}

2.html-webpack-plugin 生成html

將dist的目錄下面的index.html移入src目錄,并且刪除script 以及css 的引入標(biāo)簽,然    

后安裝html-webpack-plugin包。

cnpm install --save-dev html-webpack-plugin

在webpack.config.js中修改如下

const path=require("path");
const webpackDevServer=require("webpack-dev-server");
const extractTextWebpackPlugin=require("extract-text-webpack-plugin");
const uglify=require("uglifyjs-webpack-plugin");
const htmlWebpackPlugin=require("html-webpack-plugin")
module.exports={
    mode:"development",
    entry:[
        path.join(__dirname,"./src/entry.js"),
        path.join(__dirname,"./src/entry1.js"),
    ],
    output:{
        path:path.join(__dirname,"dist"),
        filename:"[name].js"
    },
    module:{
        rules:[
            {
                test:/.css$/,
                use:extractTextWebpackPlugin.extract({
                    fallback:"style-loader",
                    use: ["css-loader",]
                })
            }
        ]
    },
    plugins:[
        new extractTextWebpackPlugin({
            filename:"index.css"
        }),
        new uglify(),
        new htmlWebpackPlugin({
            minify:{
                removeAttributeQuotes:true
            },
            hash:true,
            template:path.join(__dirname,"./src/index.html")
        })
    ],
    devServer:{
        contentBase:path.join(__dirname,"dist"),
        host:"localhost",
        compress:true,
        port:8888
    }
}

file-loader、url-loader html-withimg-loader圖片處理以及打包
在src下面建一個images的文件夾放入一張圖片
分別在css和html 的img標(biāo)簽中引入

cnpm install --save-dev file-loader url-loader
cnpm install --save html-withimg-loader

webpack.config.js修改如下:

const path=require("path");
const webpackDevServer=require("webpack-dev-server");
const extractTextWebpackPlugin=require("extract-text-webpack-plugin");
const uglify=require("uglifyjs-webpack-plugin");
const htmlWebpackPlugin=require("html-webpack-plugin");
const webset={
    publicPath:"192.168.0.175:8888/"
}
module.exports={
    mode:"development",
    entry:[
        path.join(__dirname,"./src/entry.js"),
        path.join(__dirname,"./src/entry1.js"),
    ],
    output:{
        path:path.join(__dirname,"dist"),
        filename:"[name].js"
    },
    module:{
        rules:[
            {
                test:/.css$/,
                use:extractTextWebpackPlugin.extract({
                    fallback:"style-loader",
                    use: ["css-loader",]
                })
            },
            {
                test:/.(png|jpg|gif)$/,
                use:[{
                    loader:"url-loader",
                    options:{
                        limit:8192,
                        outputPath:"images/"
                    }
                }]
            },
            {
                test:/.(htm|html)$/i,
                use:["html-withimg-loader"]
            }
        ]
    },
    plugins:[
        new extractTextWebpackPlugin({
            filename:"index.css"
        }),
        new uglify(),
        new htmlWebpackPlugin({
            minify:{
                removeAttributeQuotes:true
            },
            hash:true,
            template:path.join(__dirname,"./src/index.html")
        })
    ],
    devServer:{
        contentBase:path.join(__dirname,"dist"),
        host:"localhost",
        compress:true,
        port:8888
    }
}

4.配置babel(很關(guān)鍵,可以讓瀏覽器支持es6語法。)

cnpm install babel-loader babel-core babel-preset-env

在webpack.config.js中添加loader:

后續(xù)抽空補上打包jquery以及第三方插件的webpack的配置。。。。。。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/96840.html

相關(guān)文章

  • webpack4 化繁為簡(一)

    摘要:從最簡單的到項目中的實踐。指令是平臺下,并且使用了來安裝包的依賴一基礎(chǔ)初始化項目會在項目目錄下創(chuàng)建文件安裝下面來寫最簡單的一個入門。 webpack4前言背景用途不多說,上來就干。從最簡單的demo到項目中的實踐。(指令是window 平臺下,并且使用了cnpm 來安裝包的依賴.)一.基礎(chǔ)demo 1.初始化項目 npm init -y 會在項目目錄下創(chuàng)建package.json 文件...

    arashicage 評論0 收藏0
  • Swoole 2019 :化繁為簡、破繭成蝶

    摘要:開發(fā)負(fù)責(zé)人創(chuàng)建分支,編寫單元測試腳本,編寫代碼,實現(xiàn)提案中的所有內(nèi)容,最終發(fā)起交叉評審,檢查代碼,提出改進意見,反饋給開發(fā)負(fù)責(zé)人,繼續(xù)完善細(xì)節(jié)。 Swoole開源項目從2012年開始發(fā)布第一個版本,到現(xiàn)在已經(jīng)有近7年的歷史。在這七年的時間里: 提交了8821次代碼變更 發(fā)布了287個版本 收到并解決1161次issue反饋 合并了603次pull request 共有100位開發(fā)者...

    adam1q84 評論0 收藏0
  • 使用prince-cli,輕松構(gòu)建高性能React SPA項目~

    摘要:對模塊進行了打包,監(jiān)聽文件更改刷新等功能,創(chuàng)建了個服務(wù),分別為靜態(tài)資源服務(wù)用于代理本地資源,與自刷新瀏覽器請求服務(wù)用于接受,請求,返回數(shù)據(jù)服務(wù)用于收發(fā)消息。除了項目,還可以換成項目。項目地址如果覺得對你有所幫助,多謝支持 prince-cli 快速指南 這是一個為快速創(chuàng)建SPA所設(shè)計的腳手架,旨在為開發(fā)人員提供簡單規(guī)范的開發(fā)方式、服務(wù)端環(huán)境、與接近native應(yīng)用的體驗。使用它你能夠獲...

    roundstones 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<