2016-01-28 50 views
4

我正在嘗試將Autoprefixer集成到Symfony2(使用Assetic)工作流程中。我的第一個念頭是Assetic已經爲其提供了支持,爲filter(如UglifyCSS等),所以我想這:如何在Symfony2中使用Autoprefixer

{% stylesheets 
     '@PrivateBundle/Resources/public/less/bootstrap/bootstrap.less' 
     '@PrivateBundle/Resources/public/less/private.less' 

     filter='less,cssrewrite,autoprefixer,?uglifycss' 
    %} 
     <link rel="stylesheet" href="{{ asset_url }}"> 
    {% endstylesheets %} 

但沒有奏效。


我能找到的唯一的選擇是netzmacht/assetic-autoprefixer,但我不能讓它工作之一。

我安裝autoprefixer全球(通過sudo npm install -g autoprefixer),並且還安裝kriswallsmith/assetic(我的猜測是支持Autoprefixer不同assetic)通過作曲,但之後,我無法找到我需要的parameters.yml文件二進制文件。

我讀了一些github問題,autoprefixer可能自上次更新資產autoprefixer後多次更改,但現在找不到線程。無論如何,沒有任何進一步的評論。

有什麼我失蹤或做錯了嗎?是否有任何其他方式使用Symfony和Assetic使用Autoprefixer(或任何其他類似的工具)?

+1

資產不包含在Symfony3中,因此可能很快就會被棄用。考慮將您的工作流程改爲吞噬或webpack。 – luchaninov

+0

@我知道,升級到Symfony3並創建一個gulp工作流程是一件值得做的事情,但我現在需要堅持使用Symfony2。 – seiseises

回答

4

我終於找到了解決方案。似乎autoprefixer不再是獨立的工具,而是其他工具的插件,因此assetic-autoprefixer試圖使用它的方式(使用二進制)不再有效。

因此,代替autoprefixer,解決方案安裝了autoprefixer-cli,這是一個解決「傳統」代碼的非官方二進制代碼。

sudo npm install autoprefixer-cli --save 

然後指向parameters.yml中的那個二進制文件。在我的情況下:

assetic: 
    autoprefixer: 
     bin: %kernel.root_dir%/../node_modules/autoprefixer-cli/autoprefixer-cli 
+0

不錯!我擔心我需要使用autoprefixer <= 2.2.0(在'.bin'中有一個「binary」的最後一個版本)。 – flu