尝试加载多个js库。使用下面的任何一种方法,bootstrap和facebook js文件都可以正常加载,但是我添加的任何其他库如果按名称调用则抛出500错误,或者如果使用/ *只是不加载,则文件全部在同一目录中据我所知,相同的权限。为什么会发生这种情况?我该如何解决?
方法1:
{% javascripts
'bundles/onnbrun/js/*'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
方法2:
{% javascripts
'bundles/onnbrun/js/jquery-1.8.0.min.js'
'bundles/onnbrun/js/jquery-ui-1.9.0.js'
'bundles/onnbrun/js/bootstrap.min.js'
'bundles/onnbrun/js/facebook_enable.js'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
更新#1:
使用下面建议的@Bundle语法,我可以运行php app / console assetic:dump而不会出错;但是,当我尝试在浏览器中访问app_dev.php时,我收到错误:
在“ONNBrunBundle :: web.html.twig”中编译模板(“无法找到文件”@ ONNBrunBundle / js / jquery-1.8.0.min.js“。”)时抛出异常
我可以通过ide和putty查看位于我的bundle的Resources / public / js目录中的文件。
更新#2:
来自#symfony的lee的建议尝试在我的浏览器中路由到我的js目录,瞧!只有两个js文件一直在正常服务 - 没有别的。
所以... / www / src / ONN / BrunBundle / Resources / public / js向我展示了当我通过putty或通过我的ide或任何随机ftp程序查看时我正在尝试提供的所有js文件;但是,浏览器中的/ web / bundles / onnbrun / js /仅显示正确提供的两个js文件。
我已经运行了资产:dump和assetic:dump --env = prod --no-debug,没有错误。
我已经运行缓存:清除。
我不知道是什么导致了这种差异。
答案 0 :(得分:3)
案例1)
您的文件存储在一个包中
如果是这种情况,请使用以下代码
{% javascripts
'@YourBundle/Resources/public/js/*'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
案例2)
您的文件存储在根网站目录下的js目录(不是捆绑目录)
{% javascripts
'js/*'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
最后一步
转储您的文件
php app/console assetic:dump --env=prod --no-debug