html min

作者: 许彦峰 | 来源:发表于2022-06-28 18:00 被阅读0次

    项目中有个html压缩的需求,就像这个网站1网站2,而npm上刚好也有对应的html-minifer package,尝试着加到项目中,发现在import后,报错
    process is not defined
    nodejs 有process,但是web没有,那么肯定得需要注入process变量才能让web正常运行,于是网上各种查资料,最初想到的是定义这个process变量,

    new webpack.DefinePlugin({
        process: {
        platform: 'win32',
        browser: true,
      },
    }),
    

    发现死活都识别不到,经过各种询问查阅资料,正确的处理方式:

      new webpack.ProvidePlugin({
       process: 'process/browser',
     }),
    

    其实nodjs官方也有对这块的处理process package
    process这边正常了,但是有开始报错fs的问题,发现根源是在ugly-js这个package,因为html-minifer依赖了这个package,而这个package之前使用过,他就是非常依赖nodejs环境,就算fallback中替换web相关的package,也会有后续各种依赖的问题,

    resolve: {
      fallback: {
        'fs': false, // require.resolve('browserify-fs'),               
      },
    },
    

    因为我目前只有html的需求,我看到他使用的html相关的package是html-minifier-terser,就选择项目中仅仅使用这个package就行了。
    折腾完毕,OK!

    相关文章

      网友评论

          本文标题:html min

          本文链接:https://www.haomeiwen.com/subject/rwqzvrtx.html