2016-02-29 31 views
1

我想將供應商目錄中的庫中的cssjs文件包含到Twig中。從供應商庫中通過Twig中的資源包含css和js文件

我通過composer將morrisjs下載到了我的供應商symfony目錄中。現在我想將主要的cssjs文件包含到我的Twig模板中。但據我所知,asset函數僅適用於位於Bundles中的文件。

我想包括位於以下路徑的文件:

  • 項目\供應商\ morrisjs \ morris.js \ morris.js
  • 項目\供應商\ morrisjs \莫里斯。 JS \ morris.css

我想到了一些理論上的代碼,將看起來像:

{% block stylesheets %} 
    <link href="{{ asset('vendor/morrisjs/morris.js/morris.css') }}" /> 
{% endblock %} 

有沒有可能將這些文件直接包含在供應商中,以及何時不能?

回答

2

如果morrisjs是一個前端JavaScript庫,然後通過npmbower安裝。

通過composer安裝的軟件包應該在Resources/public所有的公共資產,這樣你就可以使用它們發佈:

$ php bin/console assets:install target [--symlink] 

然後在樹枝模板使用剛:

<link href="{{ asset('bundles/acmedemo/css/contact.css') }}" rel="stylesheet" /> 
1

安裝新的軟件包之後,運行:

php app/console assets:install web 

'web'是你的服務器的文檔根目錄(public_html或任何它)。 您還需要拋售資產:

//for dev 
php app/console assetic:dump 
//for prod 
php app/console assetic:dump --env=prod --no-debug 

在您的服務器公用根,你將不得不目錄/包/所有的文件都存在,你可以很容易地將它們包含在樹枝{{資產( 'bundles/morri ..)}}

請閱讀combining assets,這是您在某些時候需要的。

相關問題