我想知道是否有可能从自定义文件夹部署资源。
我已经将我的业务逻辑和实体与捆绑包分开了,现在我希望我的自定义js库有一个集中的位置。
是否有任何配置可供symfony或assetic部署不属于捆绑包的自定义文件夹? TIA
答案 0 :(得分:0)
好吧,我找到了一个无意义的答案。
在github上查看一个repo我看到Assetic可以配置为接收一些输入资源并生成这样的唯一输出:
assetic:
debug: %kernel.debug%
use_controller: true
filters:
cssrewrite: ~
yui_css:
jar: %kernel.root_dir%/../vendor/nervo/yuicompressor/yuicompressor.jar
yui_js:
jar: %kernel.root_dir%/../vendor/nervo/yuicompressor/yuicompressor.jar
less:
node: /usr/bin/node
node_paths: [/usr/local/bin/]
apply_to: "\.less$"
assets:
scripts:
inputs:
- %kernel.root_dir%/../src/MyResources/script.js
- @FoundationViewBundle/Resources/public/js/*
filters:
- cssrewrite
- yui_js
output: js/scripts.min.js
debug: %kernel.debug%
stylesheets:
inputs:
- %kernel.root_dir%/../src/MyResources/stylesheet.css
- @FoundationViewBundle/Resources/public/css/*
filters:
- less
- yui_css
output: css/style.min.css
debug: %kernel.debug%
可以直接使用:
<link href="{{ asset('css/style.min.css') }}" rel="stylesheet">
<script src="{{ asset('js/scripts.min.js') }}"></script>
或使用Assetic别名:
{% stylesheets '@stylesheets' %}
<link rel="stylesheet" type="text/css" media="screen" href="{{ asset_url }}">
{% endstylesheets %}
{% javascripts '@scripts' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}