Каждый, кто когда-либо пытался использовать Electron, вероятно, знает, что он не поддерживает window.prompt()
, а никогда не будет поддерживать , как сказали разработчики проекта в сообщении ниже.
Поскольку разработчики Electron даже не рассматривали возможность использования этой функции, я подумал о том, чтобы попробовать ее самостоятельно.
Я провел некоторое исследование.Проверка таких вещей, как «Custom window.prompt ()», «переопределение стандартного приглашение (() javascript» и т. Д.), Не принесла пользы.Наиболее релевантная статья была о пользовательских окнах модального ввода jQueryUI.
Поскольку ни одно из них уже не было доступно (или, возможно, я всего лишь полный Googleklutz [человек, которому трудно выбрать подходящие условия поиска или интерпретировать результаты)страница при использовании поисковой системы в Интернете, в частности, Google]) Я попытался сделать все сам.
Я создал разметку для модального (простой div
с input
и кнопкой отправки).function prompt(a, b) {...}
показывал, что поле и другая функция (локальная) прослушивали кнопку отправки для отправки приглашения, затем устанавливали переменную, определенную в родительской функции (prompt()
, чтобы она (родитель) могла вернуть это(через return
). Я был робким, чтобы выяснить, что return
из prompt()
вызывается сразу после срабатывания функции waws, поэтому для const a = prompt("What shall the value of 'a' be?");
=> a === ""
всегда было верно.
Я уже рассмотрел вопрос об использовании async function prompt(...) {...}
. Вещи, которые сохранили мой статус только что "рассмотрел", были: а) я никогда не использовал асинхронный ранее;и б) я быстро догадался (поправьте меня, если ошибся), что это приостановит весь документ, так что вы не сможете открыть окно, ввести в него что-нибудь, отправить его.
Деятельность, описанная в параграфе перед предыдущей, была моей попыткой год назад (сдался), увы, теперь я снова сталкиваюсь с той же проблемой.Теперь я чувствую себя в безопасности, заявляя, что это беспокоило меня уже год.
Я не хочу открывать другое окно (например, через window.open()
) и иметь его как подсказку (как ваниль window.alert()
).делает).Зачем?Если пользователь получает приглашение, но открывает другое окно (например, Google для поиска того, что ввести), он может открыть мое приложение, и приглашение останется свернутым, что приведет к путанице, почему все приложение зависло (возможно, оно забыло, что оно имелогде-то откроется приглашение).Если это действительно необходимо иметь в новом окне, оно должно быть безрамным, чтобы оно могло выглядеть как часть DOM моего приложения.
Любой совет, совет, ссылка, библиотека, модуль узлаили, в конце концов, кусок кода будет чрезвычайно полезен!