Как переходить по страницам, не используя механизм 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'
Да все получилось, если я правильно понял то это выглядит так
mainView.router.navigate({url:’/dashboardRequest’,route: { pageName: ‘dashboardRequest’ }});
Так лучше не делать, ибо это недокументированный “динамический” роут, в таком случае если вы вернетесь на эту страницу из истории то она не будет загружена. Лучше в роутах:
{
path: '/dashboardRequest',
pageName: 'dashboardRequest',
}