troopers / assetic-injector-bundle
此包已被弃用且不再维护。未建议替代包。
此包允许您定义全局的javascript和样式表。
1.1.3
2017-05-26 08:19 UTC
Requires
- php: >=5.3.2
- symfony/assetic-bundle: ~2.7
- twig/twig: ~2.0
This package is not auto-updated.
Last update: 2021-12-21 22:33:21 UTC
README
=============
AsseticInjectorBundle
描述
AsseticInjectorBundle 允许您在项目的任何位置自动包含javascript和样式表。
此包将扫描每个注册的包并搜索 asset_injector.json 文件。从这个文件中,注入器将收集资源并将它们注入到Assetic引擎中。要包含它们,您必须定义一个标签(脚,头,自定义等,实际上是你选择的那个)并将该标签添加到所需的Assetic块中。
安装
使用Composer
在您的composer.json文件中添加此行
"troopers/assetic-injector-bundle": "~1.0"
在AppKernel.php中声明此包
public function registerBundles() {
$bundles = array(
[...]
new Troopers\AsseticInjectorBundle\TroopersAsseticInjectorBundle(),
[...]
工作原理
.. 声明 assetic_injector.json文件在您的应用程序或包的资源/config文件夹中。
在此文件中,列出所有标签及其对应的要注入的资源
{
"require_all":
{
"javascripts":
{
"head": "@MyBundle/Resources/public/js/myscript.js"
},
"stylesheets":
{
"head": "@MyBundle/Resources/public/css/mystyle.css"
}
}
}
.. 包含对应的标签到您的Assetic块中,代码为:injector="tag"
例如
{% javascripts injector="head"
'@MyAcmeDemoBundle/Resources/public/jsloremipsumdolorsitamet.js'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
.. 结果
与标签关联的资源通过asset_injector.json被注入。
例如
{% javascripts injector="head"
'@MyAcmeDemoBundle/Resources/public/jsloremipsumdolorsitamet.js'
'@MyBundle/Resources/public/js/myscript.js'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
享受!
不再需要从Assetic注入器预置包中包含javascript或样式表!只需添加标签,就完成了!