如何创建自己的Symfony Assetic Filters?

时间:2011-11-15 12:15:18

标签: php symfony1 assetic

我想创建自己的Assetic过滤器,类似于LESS,SASS和Google Closure Compiler过滤器。

我可以看到过滤器位于vendor/assetic/src/Assetic/Filter,但显然我不能只修改该代码库。

1 个答案:

答案 0 :(得分:7)

正确的方法应该是创建一个服务,将业务逻辑封装在DIC中,并使用 assetic.filter_manager 标记对其进行标记。

例如,内置咖啡脚本过滤器以这种方式注册:

<service id="assetic.filter.coffee" class="%assetic.filter.coffee.class%">
    <tag name="assetic.filter" alias="coffee" />
    <argument>%assetic.filter.coffee.bin%</argument>
    <argument>%assetic.filter.coffee.node%</argument>
</service>

修改代码库绝对是做错的方法,symfony DIC提供了更好的解决方案!