|
|
|
Глобальная переменная недоступна через глобальный объект30.10.2020, 18:22. Показов 3422. Ответов 22
Столкнулся с такой странной проблемой. Даже в консоли ввожу имя переменной(в моем случае pages) и получаю доступ к ней без проблем, при этом window.pages не существует.
В двух словах опишу, что я делаю, чтобы было понятно, как я дошел до жизни такой, но вообще это не так важно, поскольку вопрос интересен в принципе: как так получается и как с этим бороться. В данный момент вкуриваю такую вот штуку Bolero: F# in WebAssembly. Если в двух словах, то там создается одностраничное приложение, где основная логика выполняется в WebAssembly, но нужно кое-где подтягивать существующий жс-код и как-то с ним взаимодействовать. Вот я, собственно, так и сделал: подтянул d3.js для визуализации данных, и немного дополнительного кода для инициализаии всего этого дела. В своем скрипте(он в отдельном файле) создал переменную pages, чтобы разделить логику отдельных страниц и уже через этот объект получаю доступ ко всему функционалу. Из кода на F# я могу вызвать жс-функцию через жуткую фиговину, но тем не менее это работает. И вот делаю я вот это вот все и получаю сообщение, что дескать pages не является членом windows, поскольку та самая "жуткая фиговина" ищет указанную функцию именно в объекте window. Ну и как уже написал ранее из консоли сам убедился что переменная доступна при прямом обращении к ней и недоступна при обращении через window. Проблему я решил, добавив к элементу script атрибут defer, но как бы вопросы все равно остались. Интересно, что и почему происходит, как с этим бороться и все такое ))
0
|
|
| 30.10.2020, 18:22 | |
|
Ответы с готовыми решениями:
22
ASP IIS Глобальная переменная - объект Глобальная переменная: Реализация через класс Подскажите плз где ошибка не вытаскивается глобальная переменная через $_GET |
|
|
||
| 02.11.2020, 12:32 [ТС] | ||
|
0
|
||
|
409 / 162 / 32
Регистрация: 26.11.2019
Сообщений: 434
|
|
| 02.11.2020, 12:56 | |
|
diadiavova, тогда еще вопрос возникает, когда начали применять фреймворки, то при начальной загрузке сложных приложений пользователь видит сначала не полностью отрисованную страницу, либо прелоадер, и отрисовывается долго, особенно на слабых девайсах, или грузится долго(ибо фреймворки тоже весят а интернет слабый), и пользователь просто уходит со страницы. Теперь используют ssr, т.е. страница рендерится на сервере и отдается клиенту статическая, т.е. загружается быстро, и пока пользователь совершит какое либо первое действие, уже успевают подгрузится и фреймворки и либы и прочее. Вопрос: WebAssembly не будет ли аналогично подтормаживать своим компилятором?
0
|
|
|
|
||
| 02.11.2020, 13:23 [ТС] | ||
|
Но тут есть некоторые варианты оптимизации. Если взять .Net Runtime и набор стандартных библиотек .Net Standart, то они хоть и содержат знакомый функицонал, но при этом они сильно порезаны, то есть из них удалено все, что в браузере работать не может, то что осталось оптимизировано, в том числе и по размеру. Также предусмотрены варианты сжатых версий, правда это не будет работать на статических серверах, но если сервер поддерживает сжатие, то он может напрямую брать более компактные версии этих либ. Насколько я понимаю, связано это с тем, что браузер может обрабатывать сжатые файлы, но для этого ему нужно получить соответствующие заголовки, а статический сервер не заставишь их отправлять. Есть еще нюанс: там предусмотрена возможность перенаправлять вызовы на cdn, а поскольку стандартный набор библиотек всегда один и тот же, то браузер может кешировать эти библиотеки и брать их из кеша для разных приложений. Ну и кроме того, технология сейчас дорабатывается, так что будут еще улучшения. Например, насколько я знаю, собираются в WebAssembly реализовать встроенную поддержку сборщика мусора, это тоже плюс, поскольку дотнет-технологии нуждаются в нем, и его реализация на данный момент находится все в том же файле dotnet.wasm, если будет встроенная поддержка, то этот файл тоже станет легче. Таким образом, ряд проблем решается, но с другой стороны надо понимать и то, что сложный функционал требует много кода, так что тот факт, что некоторые приложения, построенные на этой технологии будут достаточно тяжеловесными, вряд ли сможет ее убить.
1
|
||
| 02.11.2020, 13:23 | |
|
Глобальная переменная, локальная переменная, параметр переменные, параметр заполнения глобальная переменная Глобальная переменная глобальная переменная Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы
## О чём эта статья
В процессе построения ОДУ-модели (система дифференциальных. . .
|
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет)
Содержание проекта
Симуляция вековой (50 лет) экологической сукцессии в почве леса
Основные участники: АМ-гриб, ЭКМ-гриб,. . .
|
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов
Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
|
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация
В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
|
|
Сукцессия 20. Война автоботов. Делаем ставки. Лёд против "пш-пш!".
anaschu 11.07.2026
Битва ИИ в ризосфере: Как мы скрестили жесткие ОДУ, закон Фика и «подземный шантаж»
Уважаемые коллеги!
Хочу поделиться уникальным опытом ведения междисциплинарной компьютерной разработки. Прямо. . .
|
Сукцессия 19. Какие выводы я сделал из модели? Часть 2.Внутримикоризный стехиометрический буфер и хроно-дискретные зоны экспансии
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы
Математический аппарат моделирования
|
Сукцессия 18. Какие выводы я сделал из войны грибов с деревьями? Часть 1- рассказ и немного про термины
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы
Математический аппарат моделирования
Система ОДУ описывает динамику изменения массы различных компонентов системы во времени. Ключевой. . .
|
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
|