为什么part_1.js, part_2.js显示在我的资产编译代码
Why is part_1.js, part_2.js showing up in my assetic compiled code
当我使用asset编译我的代码时,我的js文件被命名为part_1.js, part_2.js。在我的代码中,我没有看到这个引用到part_。这是从哪来的?
config.yml
assetic:
assets:
our_custom_js:
inputs:
- '@MyBundle/Resources/public/js/base.js'
filters: []
output: 'custom.js'
fos_js_routes:
inputs:
- 'bundles/fosjsrouting/js/router.js'
output: 'fos_js_router.js'`
base.html.twig
{% javascripts combine=false output="sandbox.js"
'@our_custom_js'
'@fos_js_routes'
%}
<script src="{{ asset_url }}"></script>
<script src="{{ path('fos_js_routing_js', {"callback": "fos.Router.setData"}) }}"></script>
{% endjavascripts %}
我的源文件最终看起来像这样
<script src="/sandbox_part_1.js"></script>
<script src="/js/routing?callback=fos.Router.setData"></script>
<script src="/sandbox_part_2.js"></script>
<script src="/js/routing?callback=fos.Router.setData"></script>
这个问题在这里也被问到如何使Symfony 2资产编译产生不同的文件名?
刚刚回答了同样的问题。在开发环境(app_dev.php
)中访问您的应用程序时添加'part_#'字符串。
默认情况下,{% javascripts %}
将打印所有资产/脚本,每个脚本使用<script>
行。在生产环境中,它们是组合在一起的。
{% javascripts %}
函数的作用就像开发环境中的foreach
循环,而它将所有资产组合到生产中的单个<script>
行。如果您看一下文档中的php脚本,您可以看到它使用的是foreach
:
<?php foreach ($view['assetic']->javascripts(
array(
'@AppBundle/Resources/public/js/*',
'@AcmeBarBundle/Resources/public/js/form.js',
'@AcmeBarBundle/Resources/public/js/calendar.js',
)
) as $url): ?>
<script src="<?php echo $view->escape($url) ?>"></script>
<?php endforeach ?>
你的base.html.twig应该是这样的:
{% javascripts combine=false output="sandbox.js"
'@our_custom_js'
'@fos_js_routes'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
<script src="{{ path('fos_js_routing_js', {"callback": "fos.Router.setData"}) }}"></script>
当另一个<script>
不在javascripts
部分内时,它将不在循环中,因此它将只打印一次。
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- Angular JS IE9 Hashbang url rewriting
- 使用JS将数组转换为json对象
- Node.js v6.2.0类扩展不是函数错误
- 当js函数's已执行
- 要求未定义JS回调参数
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 如何从Java/scala调用js美化程序
- 如何更改<svg>标记为<img>用js标记
- 如何使用 node.js 比较两个 json 数组
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- positon元素相对于JS中的parent.part容器?没有绝对/固定的定位
- Highlight a specific part in <textarea> using JS