首页 > Web开发 > 详细

2.1.7 html的处理与打包

时间:2020-02-12 09:50:47      阅读:65      评论:0      收藏:0      [点我收藏+]

webpack可以自动生成HTML,自动引入js和css

html生成

需要用到的plugin    cnpm install html-webpack-plugin --save-dev

相关配置

filename     -- 打包生成的 html 文件的名字
template     -- 指定一个 html 文件为模板 (以本地html文件为模板)
minify       -- 压缩html (去掉空格,换行)
inject       -- 是否把js,css文件插入到html,插入到哪 
chunks       -- 多入口时,指定引入chunks

1、引入插件  

var htmlWebpackPlugin = require(‘html-webpack-plugin‘);

2、在插件中注册

plugins:[
   new htmlWebpackPlugin({
      filename:"index.html",
      template:"./index.html",
      minify:{
        collapseWhitespace: true
      },
      inject:false,
      // chunks:[‘app‘] //多入口
   })
 ]    
生成的index.html
<!DOCTYPE html><html><head><title></title></head><body><div id="mydiv" class="div1"></div></body></html>
不配置chunks
<!DOCTYPE html>
<html>
<head>
    <title></title>
 
<link href="app.min.css" rel="stylesheet">
<link href="app2.min.css" rel="stylesheet"></head> <body> <div id="mydiv" class=‘div1‘></div> <script type="text/javascript" src="./app.bundle.js"></script>
<script type="text/javascript" src="./app2.bundle.js"></script></body> </html>
配置chunks 为‘[app]‘
<!DOCTYPE html>
<html>
<head>
    <title></title>
 
<link href="app.min.css" rel="stylesheet"></head>
<body>
 <div id="mydiv" class=‘div1‘></div>
  
<script type="text/javascript" src="./app.bundle.js"></script></body>
</html>

 

webpack.config.js

var extractTextCss=require(‘extract-text-webpack-plugin‘);
var htmlWebpackPlugin=require(‘html-webpack-plugin‘);
module.exports= {
    entry:{
     app:"./app.js",
     app2:"./app2.js"
    },
    output:{
        path:__dirname+"/src/dist",
        filename:"./[name].bundle.js",
    },
     resolve:{
     alias: {
       a2:"./js/app2.js",
     }
     },
    module:{
        rules: [
     {
       test:/\.less$/,
       use:extractTextCss.extract({
        fallback:{
           loader:‘style-loader‘,
           options:{
            //insertInto:"#mydiv",
            singleton:true,
            //transform:"./transform.js"
           }
         },
        use:[
         {
           loader:‘css-loader‘,
           options:{
             modules:{
              localIdentName:‘[path][name]_[local]_[hash:4]‘
             }                    
           } 
         },
         {
          loader:‘less-loader‘
         }        
        ]
       })
     }
     ]
    },
  plugins:[
   new extractTextCss({
    filename:‘[name].min.css‘
   }),
   new htmlWebpackPlugin({
      filename:"index.html",
      template:"./index.html",
      // minify:{
      //   collapseWhitespace: true
      // },
      // inject:false,
      chunks:[‘app‘]
   })
  ]
}

最终生成的项目目录截图

技术分享图片

 

2.1.7 html的处理与打包

原文:https://www.cnblogs.com/slightFly/p/12297563.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!