год назад именно этот вопрос поднимал на форуме, но не могу найти где и не помню как решил.
постепенно перешел на Лайтнинг компоненты и все позабылось
Прилетела мне задачка по SF и Lightning и сразу поставила в тупик.
У меня была старая VF страница. Все ок открывается через /apex/MyPage. Но страница принимает некоторые входящие GET параметры.
Появилась задача показать эту страницу в Lightning интерфейсе. Коллеги по цеху сразу посоветовали обернуть в Tab. Сделал и страница показалась теперь с Lightning Header. Вроде дело сделано. Страница теперь доступна по такому урлу
/lightning/n/MyPage
НО теперь GET параметры не работают. Что за нах? Как мне теперь передавать в мою VF страницу внутри Lightning Tab GET параметры?
Такая хрень /lightning/n/MyPage?account_id=XXXXXXXXX нихрена работает
Может я что-то упустил?
год назад именно этот вопрос поднимал на форуме, но не могу найти где и не помню как решил.
постепенно перешел на Лайтнинг компоненты и все позабылось
Вместо ? Используй # в url
Нагуглил эту тему на форуме. Она?
https://salesforce-developer.ru/forum/topic-kak-peredat-url-parametr-v-visualforce-stranitsu-v-lightning-experience
Не понял прикола.
Так?
/lightning/n/MyPage#account_id=XXXXXXXXX
Но я так понимаю что простой
this.accountId = ApexPages.currentPage().getParameters().get('account_id');
тут явно не сработает?
Потому что оно не работает
О! Млин!!! Я даже не могу поверить в такую случайность.
Заработало. Чисто решил на удачу проверить.
Ковырялся в исходниках страницы и нашел урл на другую страницу и решил его немного потестить и получился результат.
/one/one.app#/alohaRedirect/apex/MyPage?account_id=XXXXXXXX
После перехода по такому урлу он меняет вид на такой
/one/one.app#eyJjb21wb25lbnREZWYiOiJvbmU6YWxv...
Но сама страница открывается внутри Lightning точно так же как /lightning/n/MyPage даже при том что самого Tab нет (я его удалил).
Норм! С этим можно жить. Странно что еще никто до этого не дошел. У нас в компании нашел решение чтобы заставить мою страницу работать но там все сделано через какой-то пакетный Apex класс, который по ходу сам вычисляет эту самую BASE64ECODED строку и составляет урл для редиректа.
она
кстати, "хитрый" редирект на ВФ в Templete-based Коммунити может и не сработать, там какие -то свои правила
Да мне пока такие нюансы пока не нужны, мне просто хотелось проверить как работает моя страница под Lightning интерфейсом и отсутствие возможности передать параметры в страницу как-то поднапрягла. Как-то стало удивительно нет простого решения. Ну вернее оно с ходу не нагуглилось.
Это решение нормальное, но долго грузится. И мне нужно было запустить не страницу, а именно LWC. Так что твое решение мне не подходило :(