gpt4 book ai didi

javascript - js文件中的 Twig 代码

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:26:28 26 4
gpt4 key购买 nike

将 symfony2 与 twig 模板一起使用,我通常使用嵌入在 *html.twig 文件中的 js 来动态化更多页面。

如果我的页面附加了外部 JS 文件怎么办?我如何在其中引入 twig 代码?

我知道这听起来有点陈旧,但当尝试从 javascript 重定向到已知的 symfony 路径时,它并没有那么多。就像这样:

$.post("{{ path('_check_coupon') }}",{code: coupon_code}, function(json) {
// do whatever...
});

如您所见,我在一个完整的独立 js 文件中有一个对已知路径 "_check_coupon" 的 ajax 调用。

有什么想法可以解决这个问题吗?

提前致谢

最佳答案

您可以将这样的路径嵌入到 DOM 元素的 data-path 属性中,例如:

<div id="widget" data-path="{{ path('_check_coupon') }}"> ... </div>

然后直接获取它:

$.post( $('#widget').data('path') ,{code: coupon_code}, function(json) {
// do whatever...
});

这是一种普通的方法,但比将 js 和 twig 混合在一个文件中更易于维护——至少你不会得到语法高亮。

当然,如果您正在处理表单,只需获取表单的 action 属性即可。


无论如何,我建议您不要在同一页面上同时使用 JS 和标记:您将无法缓存脚本,也无法缩小它们,因此请考虑将它们解耦,除非只涉及非常少的行。欢迎查看my little library about .

关于javascript - js文件中的 Twig 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12448337/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com