gpt4 book ai didi

javascript - 如何使用 Symfony2 将 JavaScript 文件包含到 twig 模板中

转载 作者:数据小太阳 更新时间:2023-10-29 04:07:53 27 4
gpt4 key购买 nike

我可以像这样轻松地将 CSS 文件包含到我的 twig 模板中:

{% block stylesheets %}
<link rel="stylesheet" href="{{ asset('bundles/user/css/bootstrap.min.css') }}"/>
<link rel="stylesheet" href="{{ asset('bundles/user/css/bootstrap-theme.min.css') }}"/>
<link rel="stylesheet" href="{{ asset('bundles/user/css/main.css') }}"/>
{% endblock %}

但是对于我的 JavaScript 文件

{% block javascripts %}
<script src="{{ asset('bundles/user/js/jquery-1.11.3.min.js') }}"></script>
<script src="{{ asset('bundles/user/js/bootstrap.min.js') }}"></script>
{% endblock %}

该方法不起作用。我也尝试过使用 assetics,但这也没有用。

最佳答案

我推荐 Assetic 方法。这并不简单,但它会给您带来巨大的好处。

首先,将您的 JS 嵌入到这样的模板中:

{% block my_javascripts %}
{% javascripts
'@FooBarBundle/Resources/public/js/foo.js'
'@FooBarBundle/Resources/public/js/bar.js'

filter='?uglifyjs2'
%}
<script src="{{ asset_url }}" type="text/javascript"></script>
{% endjavascripts %}
{% endblock %}

添加任意数量的 JS 文件。

现在在命令行上运行以下命令:

app/console assetic:dump

在您的 dev 环境中,这将在文档根目录中生成您的 JS 文件的副本。在您的 prod 中,这将在文档根目录中生成 一个 组合文件——第一个好处。

要在编辑文件时在后台自动生成文件,请从命令行运行以下命令,并保持运行直到完成(然后使用 Ctrl+C 取消):

app/console assetic:watch --force

(--force 选项会导致 Assetic 生成文件,即使它似乎没有任何修改。)

另一个好处是 filter='uglifyjs2' 语句:它使文件被 UgilifyJS“压缩”,加载速度更快。

Read more about using Assetic for JS and CSS in Symfony2 in the cookbook.

关于javascript - 如何使用 Symfony2 将 JavaScript 文件包含到 twig 模板中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32170795/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com