我想知道连接SF2路线最灵活的解决方案是什么&一个包含路由的JS变量。对于静态路由,我没有任何问题,但是当我想用参数连接URL时,我没有找到任何解决方案(没有硬编码)。
如果我编辑路由怎么办?更改动态URL
我使用var url = "domain.com/path/to/url/with/" + token + "/and/" + name
来生成,但它不灵活。
我知道树枝生成的url是服务器端等…
有答案吗?
示例:
JS
var route = {
home : "{{ path("home") }}",
custom_route : "{{ path("my_custom_route") }}"
}
路由。yml
my_custom_route:
pattern: /path/to/url/with/{token}/and/{name}
defaults: { _controller: "SupboxCloudBundle:Public:file" }
我想你可以试试FOSJSRoutingBundle
嗯,这取决于你想要达到的结果。你是在JS应用程序中做这个吗?
如果是我,我会在DOM中呈现路由或路由参数。我不会在JS中渲染任何东西,我会使JS代码抽象。
例如:<div data-custom="{{ path("my_custom_route") }}"></div>
<div data-home="{{ path('home') }}"
或
<a href="{{ path("my_custom_route") }}" data-route="home">whatever</a>
,那么你可以在需要的时候在JS中抓取你的路由(来自第一个例子):
var route = {
home: $('div[data-home]').data('home'),
custom_route: $('div[data-custom]').data('custom')
}
这有点乱,因为我只是想向你展示一个概念。然而,你的实际实现将取决于你想要达到的实际结果。
如果你在下面评论一个更具体的意图,我将为你提供一个更好的解决方案。