[v2] Disabled router как отключить роуты во 2 версии

Как переходить по страницам, не используя механизм f7 route. Если никак - то что прописать в route, что бы “грузились”, пусть ajax ом страницы целиком. Ранее в v1 у нас удалось подружить f7 с роутами meteorjs! После обновления на версию v2 у нас перестали работать переходы в ссылках. Так как MeteorJS “подгружает” контент не “страницей целиком”, а “правит DOM” как нужно прописать route f7, что бы это работало. Очень сильная нужда в обновлении и проект скоро обновлять, стилистику всю исправили, но вот с переходами случилась беда ( С нас вознаграждения за помощь

Не очень понятно что имеется ввиду. Router можно отключить через параметр router:false на View http://framework7.io/docs/view.html#view-parameters

В принципе, этот вариант, с отключением роутера полностью устранивает. Только один вопрос, можно ли будет как-то открывать stackedPages?

Ну если он выключен то нет, по крайней мере не встроенными средствами.

Тогда как-то придётся дружить все с метеоровсеим iron-rout . Мда, грусть тоска печаль (

Ну а как это раньше работало? Сейчас также все может загружаться через Ajax

Есть async роут внутри которого можно прописать все что угодно в зависимости от запрошенного пути

В первой версии мы не использовали роут F7 мы обходились поутру который есть в метеоре iron-router . Единственное что мы сипользовали это maiView.router.load чтобы открывать странички page-cached . После обновление у нас перестал работать переход по ссылке , банально в меню не переходит на другую страницу. А если в консоле вызвать mainView.router.navigate(‘/index’) ничего не происходит, перехода нет

Не переходит потому что должны быть прописаны роуты. Как вариант можно просто ссылкам дать класс «external” и обрабатывать их как надо в ручную, они будут проигнорированы роутером

Попробуем , отпишусь о результате

Приветствую! в классе с “external” ссылки в Side Panels отрабатываюnт, но при этом не отрабатывает panel-close

Получилось подружить iron-route c роутом F7

routes: [
{
path: ‘/index’,
async(routeTo, routeFrom, resolve, reject) {
resolve({
url: Router.go(‘index’)
});
}
},
{
path: ‘/page’,
async(routeTo, routeFrom, resolve, reject) {
resolve({
url: Router.go(‘page’)
});
}
}

],

Теперь осталось понять как вызывать страницы Stacked рвнее они вызывались так mainView.router.load({url: ‘/dashboardRequest’});

Также через роуты, но вернуть нужно pageName: 'some-page'

1 Like

Да все получилось, если я правильно понял то это выглядит так

mainView.router.navigate({url:’/dashboardRequest’,route: { pageName: ‘dashboardRequest’ }});

Так лучше не делать, ибо это недокументированный “динамический” роут, в таком случае если вы вернетесь на эту страницу из истории то она не будет загружена. Лучше в роутах:

{
  path: '/dashboardRequest',
  pageName: 'dashboardRequest',
}