fix: ссылка на парную заявку открывается в той же вкладке
Было target="_blank" — на проде это читалось как «портал зачем-то плодит окна». Ссылка ведёт на ту же страницу портала с другими rp-параметрами, так что обычная навигация даёт нормальный переход с работающей кнопкой «назад». Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -51,7 +51,7 @@ RequestTypeId» в `docs/forms.md`). Тип уже зарегистрирова
|
||||
Пара связана колонками-гиперссылками: `DismissalUrl` здесь → на заявление,
|
||||
`ClearanceUrl` в заявлении → на лист. Форма их не пишет (заполняет автосоздание либо
|
||||
вручную в SharePoint), но **показывает**: поле «Заявление на увольнение» —
|
||||
`LinkField` из `shared/ui`, read-only, открывается в новой вкладке; у листов,
|
||||
`LinkField` из `shared/ui`, read-only, открывается в той же вкладке; у листов,
|
||||
заведённых руками, ссылки нет и поле не рендерится.
|
||||
|
||||
## Секции формы
|
||||
|
||||
@@ -63,7 +63,7 @@ approval-route (`getPlannedMatrix` для фаз «Согласование» и
|
||||
|
||||
Ссылки **видны на обеих формах** и кликабельны: поле «Обходной лист» в заявлении и
|
||||
«Заявление на увольнение» в обходном листе (`LinkField`, `shared/ui`) — read-only,
|
||||
открываются в новой вкладке и появляются только когда связь есть. У согласующего,
|
||||
открывают парную заявку в ТОЙ ЖЕ вкладке и появляются только когда связь есть. У согласующего,
|
||||
только что одобрившего заявление, ссылка появляется сразу, без перезагрузки.
|
||||
|
||||
Что важно знать про это поведение:
|
||||
|
||||
@@ -18,9 +18,10 @@ interface ILinkFieldProps {
|
||||
* заполняется автосозданием обходного листа), и до этого момента их нет смысла
|
||||
* показывать.
|
||||
*
|
||||
* Открывается в НОВОЙ вкладке: портал — одна страница, и переход по ссылке в
|
||||
* текущей означал бы полную перезагрузку с потерей того, что открыто и, возможно,
|
||||
* не сохранено.
|
||||
* Открывается в ТОЙ ЖЕ вкладке — обычной навигацией. Ссылка ведёт на ту же страницу
|
||||
* портала с другими rp-параметрами (см. requestLinkUrl), то есть страница
|
||||
* перезагрузится и покажет парную заявку; для пользователя это переход «туда и
|
||||
* обратно кнопкой назад», а не второе окно, которое потом закрывать.
|
||||
*/
|
||||
export const LinkField: React.FC<ILinkFieldProps> = ({ label, url, text }) => {
|
||||
if (!url) return null;
|
||||
@@ -28,7 +29,7 @@ export const LinkField: React.FC<ILinkFieldProps> = ({ label, url, text }) => {
|
||||
return (
|
||||
<FormField label={label} full>
|
||||
<div className={styles.box}>
|
||||
<a className={styles.link} href={url} target="_blank" rel="noreferrer">
|
||||
<a className={styles.link} href={url}>
|
||||
<span>{text || url}</span>
|
||||
<Icon name="chevron-right" size="sm" />
|
||||
</a>
|
||||
|
||||
Reference in New Issue
Block a user