我想将供应商目录中库中的css
和js
文件包含在Twig中。
我通过作曲家下载了morrisjs
到我的symfony供应商目录中。现在我想将主css
和js
文件包含在我的 Twig 模板中。但据我所知,asset
函数仅适用于位于捆绑包中的文件。
我要包含的文件位于以下路径中:
- project\vendor\morrisjs\morris.js\morris.js
- project\vendor\morrisjs\morris.js\morris.css
我想了一些看起来像这样的理论代码:
{% block stylesheets %}
<link href="{{ asset('vendor/morrisjs/morris.js/morris.css') }}" />
{% endblock %}
是否有可能直接从供应商处包含这些文件,何时如何?
如果morrisjs
是一个前端JavaScript库,那么通过npm
或bower
安装它。
通过 composer
安装的包应将其所有公共资产都Resources/public
以便您可以使用以下内容发布它们:
$ php bin/console assets:install target [--symlink]
然后在树枝模板中仅使用:
<link href="{{ asset('bundles/acmedemo/css/contact.css') }}" rel="stylesheet" />
安装新软件包后,运行:
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/,你的所有文件都将存在,你可以很容易地将它们包含在Twig中,使用{{asset('bundles/morri..) }}
阅读有关组合资产的信息,这是您在某个时候需要的东西。