fex-team / fis3-postpackager-loader

静态资源前端加载器
BSD 2-Clause "Simplified" License
82 stars 38 forks source link

loader 合并资源有一些问题 #1

Closed oxUnd closed 9 years ago

oxUnd commented 9 years ago

我没有仔细排查,只说以下表象

2betop commented 9 years ago

并不是说有的 后缀都支持。如果要支持 .md 除了设置 isHtmlLike 之外,还需要这么设置。

fis.match('::package', {
  postpackager: fis.plugin('loader', {
    processor: {
      '.html': 'html',
      '.md': 'html'
    }
  })
});

因为,我不能把模板文件用同样的方式处理。

2betop commented 9 years ago

已添加 loaderLang 属性来控制。

hefangshi commented 9 years ago

建议用isHtmlLike做控制,尽量避免在插件中添加后缀名这类实际上应该归为规范的内容。

2betop commented 9 years ago

主要是 https://github.com/fex-team/fis3-postpackager-rosetta 基于 loader, 然后同时支持 html 和 tpl。

都是 isHtmlLike 但是处理方式不同。

smarty 里面也是粗暴的页面级别 all in one,但是去掉了 include/extend 资源重复问题。

note520 commented 8 years ago

我想处理 nodejs express项目服务端中的views视图中ejs文件,我的配置如下 fis.match('/views/.ejs', { isHtmlLike:true }); fis.match('/views/.ejs:js', { optimizer: fis.plugin('uglify-js'), useHash: true }); fis.match('/views/*.ejs:css', { optimizer: fis.plugin('clean-css'), useHash: true }); fis.match('::packager', { spriter: fis.plugin('csssprites'), postpackager: fis.plugin('rosetta',{ allInOne: { css:"./public/pkg/${filepath}_all.css", js:"./public/pkg/${filepath}_all.js" }, processor: { '.html': 'html', '.ejs': 'html' } }) }); ejs中的css js中的url都添加修改了对应md5链接,也都压缩了,只是ejs中零碎的script并未合并?请问是否有解决办法?