symfony的资产网址如何运作?

时间:2016-12-29 12:21:20

标签: php symfony

我正在研究一个symfony2.6项目。本网站的目的是作为插件加载到其他网站。

{% javascripts 
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/jquery-ui.min.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/intro.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/enscroll.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/select2.min.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/pageguide.min.js'

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

我使用过资产包加载js和css。这个网站在弹出窗口中打开。所以这就是问题发生的地方。 js和css采用第三方网站的基本网址。所以我不知道这个基本网址部分是如何工作的。

1 个答案:

答案 0 :(得分:2)

asset_url显示类似src="/js/path/to/lib.js"的网址,您似乎需要一条绝对路径。

您可以使用

{{ app.request.getSchemeAndHttpHost() }}

{{ app.request.getBaseURL() }}

喜欢那个

{% javascripts 
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/jquery-ui.min.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/intro.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/enscroll.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/select2.min.js'
'@OfficeBrainImagePersonalizeBundle/Resources/public/js/pageguide.min.js'

 filter='uglifyjs2' %}
    <script src="{{ app.request.getSchemeAndHttpHost() }}{{ asset_url }}" type="text/javascript"></script>
{% endjavascripts %}