FOSJSRoutingBundle - Routing.generate ничего не делает

У меня возникла небольшая проблема с FOSJsRoutingBundle в Symfony4 при попытке загрузить новый шаблон из моего файла Javascript.

Я выполнил инструкции по здесь.

Я хочу вызвать по следующему маршруту:

 /**
  * @Route("/", name = "homepage", options = {"expose" = true})
  */
  public function homepage()
  {
     return $this->render('home.html.twig');
  }

Когда

 Routing.generate('homepage');
 alert("Finished!");

в моем файле Javascript вызывается, отображается предупреждение, и больше ничего не происходит. Я, наверное, должен добавить, что я явно не нахожусь на главной странице, когда это вызывается.

Однако, если я намеренно ошибаюсь в названии маршрута или вызываю маршрут, который не был показан через

options = {"expose" = true}

Я получаю сообщение об ошибке:

Error: The route "misspelled_route" does not exist. 2 router.js:220:27

и никаких предупреждений не отображается, что наводит меня на мысль, что я правильно выполнил инструкции на веб-сайте Symfony (?).

Я упустил что-то очевидное или плохо использую комплект?

Большое спасибо !

Вы запускали php bin/console fos:js-routing:dump? Тогда php bin/console cache:clear?

Dan Costinel 22.06.2018 12:03

У меня не было, но я только что сделал, и это все еще не работает. Однако спасибо за предложение!

Ellana 22.06.2018 12:07

Откройте в браузере инструменты разработчика консоли и снова запустите действие js. Может там будет отображаться какая то ошибка. Если нет, возможно, проблема в вашем js-скрипте.

Dan Costinel 22.06.2018 12:09

Что вы ожидаете ? Routing.generate просто форматирует URL-адрес, он возвращает строку. Что именно ты хочешь? Сделать перенаправление?

BENARD Patrick 22.06.2018 12:10

Ах да, ошибка, о которой я упомянул в своем посте, отображается в консоли браузера (Firefox). Однако при правильном названии маршрута там не отображается ошибка. ---- Отредактирую это для pbenard: Да, я хотел бы сделать перенаправление. Я не понял того факта, что он просто вернул строку, если честно, это не то, что, казалось, подразумевала страница Symfony, но тогда я, должно быть, прочитал это неправильно!

Ellana 22.06.2018 12:10

alert («Готово!»); window.location.href = Routing.generate ('домашняя страница');

BENARD Patrick 22.06.2018 12:11

Большое спасибо, это отлично работает @pbenard! DanCostinel, спасибо за помощь :)!

Ellana 22.06.2018 12:13
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
7
573
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я не совсем уверен, должен ли я отвечать на свой вопрос, подобный этому, но есть ли у кого-нибудь такая же проблема при следовании инструкциям веб-сайта Symfony по FOSJsRoutingBundle:

Routing.generate возвращает строку. Если вы похожи на меня и хотите, чтобы страница перенаправлялась, вы можете использовать

window.location.href = Routing.generate('your_route_name');

Спасибо pbenard за это!

Другие вопросы по теме