webpack4打包报错Entrypoint undefined=index.html的解决办法

本文的内容正如标题,我用的是webpack4版本,在打包时可以打包正常,但是总是会打印这句话Entrypoint undefined=index.html,看着特别难受;度娘了一下说什么的都有,有的说是版本问题,这个我也没有下去印证,所以靠大家。这不是可怕的,可怕的是有问题出现,却没有解决的方法,特此将我的解决方案附上。
webpack4打包报错Entrypoint undefined=index.html的解决办法
这个原因是由webpack插件html-webpack-plugin引起的

HtmlWebpackPlugin

这个plugin曝光率很高,他主要有两个作用

1. 为html文件中引入的外部资源如script、link动态添加每次compile后的hash,防止引用缓存的外部文件问题。

2. 可以生成创建html入口文件,比如单页面可以生成一个html文件入口,配置N个html-webpack-plugin可以生成N个页面入口。

github上有些关于htmlwebpackplugin的属性介绍,大家可以上去看看。

解决方法

module.exports增加配置stats: { children: false }即可解决;

拓展

下面罗列了一些html-webpack-plugin插件常用的配置:

plugins:[
        new HtmlWebpackPlugin({
//部分省略,具体看minify的配置
minify: {
     //是否对大小写敏感,默认false
    caseSensitive: true,
    
    //是否简写boolean格式的属性如:disabled="disabled" 简写为disabled  默认false
    collapseBooleanAttributes: true,
    
    //是否去除空格,默认false
    collapseWhitespace: true,
    
    //是否压缩html里的css(使用clean-css进行的压缩) 默认值false;
    minifyCSS: true,
    
    //是否压缩html里的js(使用uglify-js进行的压缩)
    minifyJS: true,
    
    //Prevents the escaping of the values of attributes
    preventAttributesEscaping: true,
    
    //是否移除属性的引号 默认false
    removeAttributeQuotes: true,
    
    //是否移除注释 默认false
    removeComments: true,
    
    //从脚本和样式删除的注释 默认false
    removeCommentsFromCDATA: true,
    
    //是否删除空属性,默认false
    removeEmptyAttributes: true,
    
    //  若开启此项,生成的html中没有 body 和 head,html也未闭合
    removeOptionalTags: false, 
    
    //删除多余的属性
    removeRedundantAttributes: true, 
    
    //删除script的类型属性,在h5下面script的type默认值:text/javascript 默认值false
    removeScriptTypeAttributes: true,
    
    //删除style的类型属性, type="text/css" 同上
    removeStyleLinkTypeAttributes: true,
    
    //使用短的文档类型,默认false
    useShortDoctype: true,
    }
    }),
]
关注web前端开发的个人技术博客,分享前端经验和技巧
码云笔记 » webpack4打包报错Entrypoint undefined=index.html的解决办法

2 评论

  1. webpack4打包报错Entrypoint undefined=index.html的解决办法-码云笔记

  2. 文章不错支持一下吧

发表评论

提供最优质的资源集合

立即查看 了解详情