我对 Symfony2 框架还很陌生,在阅读以下文档后仍然不太明白如何包含 JQuery 库 http://symfony.com/doc/current/cookbook/assetic/asset_management.html#dumping-asset-files
我见过类似的问题,但没有一个解释一切如何协同工作?为什么我们需要抛售 Assets ?为什么将它们包含在模板中还不够?
基本上,我想要做的是将我的 JQuery 库放在 app/Resources/js/ 下 然后,在我的任何 bundle 内的任何 Twig 模板中,我想引用/包含此 JQuery 库,以便能够编写 JQuery 脚本代码。我需要修改我的 app/config/config.yml 文件吗?
请给我提供一个示例以及您的解释。以下是我到目前为止所做的事情(以下所有内容都在一个 Twig 模板中):
{% javascripts 'app/Resources/js/jquery-1.8.0.js' %}
<script type="text/javascript">
$(document).ready(function (){
$('a').click(function(event){
$('#box').fadeOut();
});
});
</script>
{% endjavascripts %}
<div id="box">
<a href="#">click me</a>
</div>
页面加载没有任何问题,但是当我单击“单击我”时,JQuery 代码没有被执行!
最佳答案
您在 assetic twig 实现中遗漏了一些东西。你应该 做:
{% javascripts 'app/Resources/js/jquery-1.8.0.js' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
...
如果没有第二行,jquery 就不会被真正加载。
在任何情况下,assetic 的使用都是可选的。如果您对它感觉不舒服,则不需要它提供的优化,或者更喜欢使用更熟悉的东西,直到您掌握了它,然后只需将 jquery 文件放在“web”文件夹中的某个位置(例如在 js 子文件夹下),然后像加载任何其他资源文件一样加载它:
<script src="{{ asset('/js/jquery-1.8.0.js') }}" type="text/javascript"></script>
关于jquery - Symfony2 如何与 JQuery 配合使用?什么是 Assets 转储?为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12028808/