Чтобы передать разные параметры в iframe URL и в верхнее окно URL - PullRequest
0 голосов
/ 23 октября 2019

У нас есть существующее приложение A (A/pathnameA/?param1=true&param2=false), которое перенаправляет на приложение B, используя window.location.href = A/pathnameB/?param1=true&param2=false. Все это происходит внутри iframe. Поэтому мы не видим изменения параметров в верхнем окне URL. Только компонент pathname изменится в URL верхнего окна в приложении B на pathnameB (A/pathnameB/?param1=true&param2=false; компонент источника URL остается прежним). Внутри приложения B мы используем эти параметры iframe param1, param2 для обработки.

Теперь у нас есть требование, когда мы хотим обновить URL верхнего окна только одним из параметров (скажем, удалить param1; A/pathnameA/?param2=false), но мы хотим сохранить оба параметра в iframe для обработки (т. Е. A/pathnameA/?param1=true&param2=false).

Для этого мы сохранили код iframe

window.location.href = A/pathnameB/?param1=true&param2=false // no change

и добавлен новый код для обновления только URL верхнего окна

window.top.location.href = A/pathnameB/?param2=false // for top window url

(или window.parent.location.href = A/pathnameB/?param2=false)

Несмотря на то, что параметры в URL верхнего окна обновляются, как и ожидалось, теперьпараметры в iframe также обновляются до A/pathnameB/?param2=false. Нам нужно, чтобы в URL-адресе iframe имелись param1, param2 и URL-адрес верхнего окна, чтобы отображались только param2.

  1. Не рекомендуется ли обновлять URL-адрес iframe и URL-адрес верхнего окна по одномудругой?
  2. Имеет ли window.top.location.href также переопределение значения URL iframe (window.location.href)?
  3. Какое решение следует использовать для этого сценария?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...