javascript - (Symfony 4) FOS Js Routing Bundle - 路由 -------- 不存在。
问题描述
Fos Js Routing 捆绑包似乎没有拾取路由 yml 文件。这是我到目前为止所做的:
设置:
$./composer.phar require friendsofsymfony/jsrouting-bundle
$bin/console assets:install --symlink public
$bin/console fos:js-routing:dump --format=json --target=public/js /fos_js_routes.json
在 base.html.twig 中:
<script src="{{ asset('bundles/fosjsrouting/js/router.min.js') }}"></script>
<script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>
在单独的 .js 模块文件中:
const routes = require('../../public/js/fos_js_routes.json');
import Routing from '../../vendor/friendsofsymfony/jsrouting-bundle/Resources/public/js/router.min.js';
在 config\routes.yaml 中:
add_post_comment:
path: /comment/add/post
controller: App\Controller\CreatorDashboard\CommentController::addPostComment
requirements:
_method: POST
在我的 javascript .js 文件中:
$(document).ready(function() {
$(".post-comment").keyup(function(e) {
var code = e.which;
if(code==13)
{
var commentText = $(this).val();
var postId = $(this).data("postid");
var userId= $(this).data("userid");
console.log("userId is " + userId + " and postId is " + postId + " and commentText is " + commentText);
var theRoute = Routing.generate('add_post_comment'); // have also tried Routing.generate('/comment/add/post');
alert("the route is " + theRoute);
在 JavaScript 控制台中,我收到错误:
Error: The route "add_post_comment" does not exist.
也许它没有看到 yaml 文件?有没有我错过的步骤?
我也重新启动了nginx。
解决方案
您不会像这样公开您的路线:
# app/config/routing.yml
my_route_to_expose:
pattern: /foo/{id}/bar
defaults: { _controller: AppBundle:Default:index }
options:
expose: true
推荐阅读
- c - 如何从选项卡控件中获取宽度和高度?
- java - http响应没有返回503状态码-java中的多线程问题
- gmail-api - 我正在尝试使用 Gmail.sendmail 发送大约 400 封电子邮件并收到消息异常:一天内调用了太多次服务:电子邮件
- python - python scrapy css选择器不是常量格式抓取
- html - 通过设置填充去除顶部的空白
- dns - 如何通过 Synology Open VPN 获得我的 dns?
- rust - 为什么 IntoIterator 特征需要显式指定关联类型 Item?
- javascript - 你如何自动化由 webhook 帖子触发的 GitHub 拉取?
- android - adb:无法打开 app.apk:不允许操作
- .net-core - 将 XDocument 与 Visual Studio Mac .Net Core 一起使用