在javascript中检索parameters.yml

Bar*_*rno 5 javascript symfony

我可以在文件javascript中检索全局参数吗?

我有例如

twitter.app_secret: my_token
Run Code Online (Sandbox Code Playgroud)

我如何在文件Javascript中检索它?

现在我用这个

<script type="text/javascript">
    var app_assoluto = '{{ app.request.getSchemeAndHttpHost() }}';
    var consumer_key_twitter = '{{ twitter_app_id }}';
    var consumer_secret_twitter = '{{ twitter_app_secret }}';
    var access_token_twitter = '{{ twitter_access_token }}';
    var access_token_secret_twitter = '{{ twitter_token_secret }}';
    var facebook_app_id = '{{ facebook_app_id }}';
    var env = '{{ app.environment }}';
</script>
Run Code Online (Sandbox Code Playgroud)

还有像{{app.request.getSchemeAndHttpHost()}}这样的参数

有一个更好的解决方案来检索这个参数?

NHG*_*NHG 4

我注意到你正在使用树枝模板。因此,您可以将参数设置为树枝全局变量,如下所示:

# app/config/config.yml
twig:
    # ...
    globals:
        key: "%your_value%"
Run Code Online (Sandbox Code Playgroud)

key在您的模板中,您可以通过以下方式访问{{ key }}

更新

如果你使用 jQuery,你可以这样做:

# template.html.twig
<script>
    var params = params || {};
    $.extend(params, {
        twitterAppId: '{{ twitter_app_id }}'
    });
</script>
Run Code Online (Sandbox Code Playgroud)

在你的 JS 文件中:

# script.js
(function() {
    params = params || {};
    twitterAppId = params.twitterAppId ||{};
)();
Run Code Online (Sandbox Code Playgroud)

我希望这个对你有用。