Можно ли получить переменную javascript из другого файла live? - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь создать систему, в которой я изменяю переменную для одного файла, и она отображается в другом без обновления. Возможно ли это вообще?

ФАЙЛ 1 (javascript):

testVar = "hi"

ФАЙЛ 2 (html):

<head>
    <script type="text/javascript" src="file1.js"></script>
</head>
<body>
    <button onclick="test()">click</button>
    <script>
        function test(){
            alert(testVar);
        }
    </script>
</body>

Я хотел бы иметь возможность изменить "привет" на "пока" в файле 1 и сделать так, чтобы файл 2 предупреждал о новом сообщении (пока) без необходимости обновления.

1 Ответ

1 голос
/ 30 октября 2019

Это возможно, но требует значительных усилий. «Горячая замена модуля» - это ваше ключевое слово в Google, поскольку это часто делается для того, чтобы упростить разработку одностраничных приложений JS путем автоматической перезагрузки страницы или ее частей.

Вам потребуется запустить процесс на вашем компьютере. машина, которая следит за локальной файловой системой на предмет изменений в файле исходного кода. Затем веб-страница должна включать скрипт, который непрерывно проверяет (посредством разговора с локально работающим веб-сервером), был ли изменен указанный файл исходного кода. Если он был изменен, в DOM должен быть вставлен тег сценария, который загружает обновленный исходный файл. Вероятно, здесь требуется больше деталей, но в этом суть.

Кстати, назначать переменные не рекомендуется, если не использовать ключевые слова var, let или const.

...