art-template-loader icon indicating copy to clipboard operation
art-template-loader copied to clipboard

关于清除注释的问题

Open tuhongwei opened this issue 7 years ago • 14 comments

我用的是webpack,然后我在webpack里面的设置是这样的 { test: /.art$/, loader: "art-template-loader", options: { htmlResourceRoot: path.join(__dirname, 'img'), root: path.resolve(__dirname), // htmlMinifier: htmlMinifier, htmlMinifierOptions: { removeComments: true, collapseWhitespace: true, minifyCSS: true, minifyJS: true } } },为了清除掉注释,但是最后没有生效,然后我用npm安装了html-minifier的包,var htmlMinifier = require('html-minifier').minify;也试了这种var htmlMinifier = require('html-minifier'),最后都没生效,请问这是什么原因?(我是把,art文件用require引入的)

tuhongwei avatar Nov 10 '17 06:11 tuhongwei

请提供demo

aui avatar Nov 10 '17 06:11 aui

这是我专门为重现问题建的一个demo,这是地址 https://github.com/tuhongwei/issueDemo ,clone下来之后 运行npm install,然后运行gulp dev

tuhongwei avatar Nov 20 '17 08:11 tuhongwei

我调试了 art-template-loader/src/index:10,发现 let options = loaderUtils.getOptions(this) || {}; 得不到 options,可能不支持 v1.x 版本的的 webpack

aui avatar Nov 21 '17 06:11 aui

建议升级 webpack 到 3,然后 webpack.config.js 第 29 行删除

aui avatar Nov 21 '17 06:11 aui

那我换成最新版的webpack试试

tuhongwei avatar Nov 21 '17 06:11 tuhongwei

我升级到了最新版的webpack还是不行,代码已提交

tuhongwei avatar Nov 22 '17 09:11 tuhongwei

webpack3 的配置不兼容 v1 的,如果你运行 webpack3 没有报错你应该检查下 webpack 版本是否已经到了 v3 了。

aui avatar Nov 23 '17 02:11 aui

webpack版本在控制台有输出,已经从原来的v1版本变成了v3版本,然后我又把webpack的配置换成v3的配置试了还是不行

tuhongwei avatar Nov 23 '17 02:11 tuhongwei

Same here! Cannot minify HTML sources

iROCKBUNNY avatar Sep 19 '18 20:09 iROCKBUNNY

same here...

henryzp avatar Nov 05 '18 12:11 henryzp

同样的问题,参数看起来不起任何作用。

leadscloud avatar Mar 24 '19 04:03 leadscloud

same issue, webpack is 4.6.0

leadscloud avatar Mar 24 '19 04:03 leadscloud

试试 cache: false,我也是同样的问题,但后来过了一段时间又好了,也没有改变什么设置。

这是我的配置,可以参考下

{
                test: /\.art$/,
                loader: 'art-template-loader',
                options: {
                    debug: false,
                    minimize: true,
                    // htmlMinifier: htmlMinifier,
                    htmlMinifierOptions: {
                        // removeAttributeQuotes: true,
                        bail: true,
                        cache: false,
                        collapseWhitespace: true,
                        minifyCSS: true,
                        minifyJS: true,
                        removeComments: true,
                        // automatically merged at runtime: rules.map(rule => rule.test)
                        ignoreCustomFragments: []
                    },
                }
            }

leadscloud avatar Mar 26 '19 02:03 leadscloud

@sbmzhcn LGTM

iROCKBUNNY avatar Mar 29 '19 16:03 iROCKBUNNY