Javascript 如何检查FOSJSRoutingBundle中是否存在路由
这是一个错误,我如何检查之前是否存在路由Javascript 如何检查FOSJSRoutingBundle中是否存在路由,javascript,symfony,Javascript,Symfony,这是一个错误,我如何检查之前是否存在路由 错误是因为路由不存在,但我希望在这种情况下显示消息或其他内容。使用控制台工具。在Symfony2中,它是: var possibleRoute = "crm_finance_report"; var route = Routing.generate( possibleRoute ); 在Symfony3中,它是: app/console debug:router 最后,根据您使用的操作系统,如果php不能像上面的示例那样工作,您必须预先编写php
错误是因为路由不存在,但我希望在这种情况下显示消息或其他内容。使用控制台工具。在Symfony2中,它是:
var possibleRoute = "crm_finance_report";
var route = Routing.generate( possibleRoute );
在Symfony3中,它是:
app/console debug:router
最后,根据您使用的操作系统,如果php不能像上面的示例那样工作,您必须预先编写
php
。您可以检查以下几点:
- 错误说明了什么
- 路线是否标记为暴露?:
bin/console debug:router
- 您是否
您的路线?:dump
bin/console fos:js routing:dump
- 是否将JS路由脚本添加到HTML中
options: expose: true
编辑:要使用JavaScript专门检查路由是否不存在,可以做两件事:
Routing.getRoutes()
,检查您的路由是否存在Routing.getRoute(…)
并捕获一个错误(如果路由…
不存在,将抛出该错误)也许我没有解释我自己,问题是这条路线根本不存在,其他路线都很好。我想知道如何检查之前。我想这可以用,谢谢。无论如何,这是路由,而不是路由器。有人提出了一个问题,但提议的PR从未实施-。您可以尝试该方法,甚至可以作为一个函数,并将FOSJSRoutingBundle作为服务传递,以确定路由是否存在。我需要签入javascript,以显示消息或其他内容。抱歉,我看到它被标记为symfony2,并认为您不知道以前存在哪些路由。用“之前”这个词,我在服务器端思考。
<script src="{{ asset('bundles/fosjsrouting/js/router.js') }}"></script>
<script src="{{ path('fos_js_routing_js', {'callback': 'fos.Router.setData'}) }}"></script>