簡體   English   中英

Symfony2包含javascript文件

[英]Symfony2 include javascript file

我是symfony的新手,有一個困擾我幾分鍾的問題:我想在我的項目中包含一個JS文件,但它似乎不起作用(瀏覽器中沒有任何反應,就像沒有包含javascript一樣) )。我從控制台安裝了資產,現在,css,圖像和JS文件存儲在web / bundles目錄中。 在我看來,我寫道:

{% javascripts %}
<script src = "http://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="{{ asset('bundles\emagmagazine\js\javascript.js') }}"></script>
{% endjavascripts %}  

我究竟做錯了什么?

我在模板中這樣做:

{% javascripts "@asset_name_1" "@asset_name_2" %}
    <script src="{{ asset_url }}"></script>
{% endjavascripts %}

asset_name_X是資產配置中資產的名稱。

您運行以下命令: php app/console assets:install web ???

編輯:檢查器或螢火蟲檢查是否已加載.js文件

如下更改您的javascript

{% block javascripts %}
    {% javascripts 
        'http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js', 
        '@emagmagazine/Resources/public/js/*' 
     %}
        <script src="{{ asset_url }}"></script>
    {% endjavascripts %}
{% endblock %}

那是處理它們的正確方法。

您忘記使用正確的塊了。
而且,通過這種方式,Assetic將處理(下載並提供)您在此處調用的外部js

只需嘗試分隔腳本類型:

<script type="text/javascript" src="{{ asset('assets/plugins/jquery/jquery.min.js') }}"></script>

或將路徑添加到base.html.twig(如果您使用的是規范),然后在樹枝中調用它:

{% block javascripts %}
{{ parent() }}
{% endblock %}

如此處所寫: http : //symfony.com/doc/current/cookbook/assetic/asset_management.html#include-javascript-files

您只需包括以下文件:

{% block javascripts %}
    {% javascripts '@EmagmagazineBundle/Resources/public/js/*' %}
        <script src="{{ asset_url }}"></script>
    {% endjavascripts %}
{% endblock %}

對於CDN文件,您可以做的最好是通常包含以下內容:

<script src="//code.jquery.com/jquery-2.1.3.min.js"></script>

如果您在{% javascripts %}插入CDN,則可以使用,但您失去了CDN的作用,那就是在其他網站上擁有一個公共庫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM