Допустим, у меня есть ApplicationRoute
с действием goBack
(как вы можете видеть в комментариях, мне нужно обрабатывать GoBack самостоятельно из-за ошибки в различных мобильных браузерах):ember.js: Вызов действия ApplicationRoute от вложенного маршрута
Mobile.ApplicationRoute = Em.Route.extend
actions:
goBack: ->
# TODO: Remove when iOS 7 fixed their history
# If there's no route to go back, go to front
# TODO: Remove when Microsoft fixed their
# back button in offline mode
if not (Nn.MobileHelper.isiPhone() or Nn.MobileHelper.isIeMobile()) and @get("router.recentRoute")?
return window.history.back()
@get("controller").set("isHitBackButton", true)
@transitionTo("front").then => @get("controller").set("isHitBackButton", false)
Как я могу вызвать это действие с другого маршрута? Обратите внимание, что поскольку мне нужно позвонить @transitionTo
, этот фрагмент кода должен быть внутри маршрута.