10 минут назад
Не создается новый сайт если при создании указать версию php 8.4Вероятно, 8.4 не до конца установлена или чтото вроде того, тут стоит зайти на страниц...
Мне было грустно без Modhost и я сделал Meowbox 44
Вчера в 14:19
Спасибо! Я домен менял, а в конфиге сайта забыл поправить… Fixed!
[aiAssist] Я же просто попросил его создать магазин, а он СДЕЛАЛ ЭТО! 10
Вчера в 14:02
Переработал подход к скорости. Стало получше
modx.pro/components/25571
Новости MiniShop3, mSearch, mFilter 21
Вчера в 06:57
Разобрался. Оказалось плагин MagicPreview ломал js в редактировании категорий товаров.
Не открываются категории miniShop 2 в админке [РЕШЕНО] 1
08 мая 2026, 22:42
Не хватает кастомизации автокомплита: к товарам нужны как минимум цена и фото.
Будет отлично, если появится в будущем.
mSearch для MODX3 и MS3 - уже в modstore.pro 11
07 мая 2026, 07:53
Решение оказалось банальным: в вашем источнике файлов нужно, чтобы пути НЕ начинались со слеша.
Почему в Диспетчере файлов не отображаются SVG файлы? 7
06 мая 2026, 13:28
Столкнулся с этим сейчас) у меня один файл не открывался, оказалось файл был в кодировке windows-1251, сменил на utf-8 и все заработало.
Uncaught SyntaxError: Unexpected token , 16
28 апреля 2026, 10:33
docs.modx.pro/components/minishop2/development/scripts-and-styles
вам нужно событие Order.submit.response.success
Как создать java script событие для кнопки "оформить заказ"? 1
27 апреля 2026, 13:13
Если только после майских праздников можно будет сделать для 2.x. Попробую.
mxDadata — интеграция DaData (Suggest, Clean, Party) с MODX 3 и MiniShop3 2
Тоесть я так понимаю, что в классическом цикле for const не прокатит, изза того что мы переменную i на каждой иттерации увеличиваем, а значит нам нужна ссылка на нее в памяти?
Так плохо
а так хорошо
Ну скорее значение? Тип понятное дело не измениться если нельзя заменить даже значение, но Боже мой, а с каких пор js стал языком со строгой типизацией? Такое чувство что из него C++ начали делать.
А почему в таком вот цикле (объект user заранее создан)
и key и element объявлены через const, хотя на каждой итерации они будут изменяться и при этом — ошибок не возникает?? Вот в моем понимании там может быть только let element =
два момента только:
— в учебниках крайне мало уделяется внимания именно этому аспекту, поэтому и спрашиваю у более опытных.
— плюс мне кажется что js в браузере и js на сервере это немного разные вещи. У них одинаковый синтаксис но разная идеология, нет? node js это прежде всего процесс в операционной системе, он регистрируется как сервис (по крайней мере в линуксе) и понятное дело — работает постоянно. js в браузере — это лишь код, которые обрабатывается встроенным в браузер интерпретатором. И мне сложно представить что он единожды инициализируется и дальше работает.
Когда нужно понять как работает та или иная функция и так далее.
Все-таки учебник Кантора — это более учебное пособие, где после каждой главы есть закрепляющие занятия.
Хотя у меня уже есть начальные знания о javascript, я прохожу учебник learn.javascript.ru/ пошагово, с первой главы. Иногда честно через силу, конкатенирую строчки, пишу if ы и прочий первоначальный синтаксис, хотя тянет сразу перейти к тому, что совсем прошло мимо меня — классы в js, модули, импорты экспорты и прочее. Но пока держу себя в руках.
www.youtube.com/watch?v=vIZs5tH-HGQ
То что вы говорите, событие пользователя и прочее — все это асинхронность выполнения кода.
Есть вот такой сайт
latentflip.com/loupe/
на котором наглядно отображается так называемый event loop для javascript в браузере, видно как асинхронные события помещаются в апи браузера, ждут наступления события, в то время как основной поток идет себе синхронно и так далее. И если в nodejs код всегда асинхронный, то в браузере (насколько я понимаю) нет, он наоборот всегда синхронный. Иначе нам не приходилось бы добавлять атрибут defer при подключении скрипта. При условии что мы не создаем асинхронности сами — добавляем промисы, колбеки и так далее.
Поэтому мне казалось что было бы логично, что если весь код состоит из объявления и присвоения переменной, то после выполнения кода — прибить эту переменную в памяти. Но это так… лишь мои домыслы, а практика показывает что нет — все переменные продолжают храниться в оперативной памяти.
А в каком тогда случае очищается память? Это где то задокументировано, вам попадалась такая инфа? При перезагрузке страницы? При закрытии вкладки?
docs.modx.com/current/en/extending-modx/plugins/system-events
Но наверное код сниппета можно получить и через $modx->getObject('какой там класс у плагинов', идентификатор плагина); Но выполнять его придется через eval()
Знаете что еще немного удивляет в js — это отсутствие официальной документации.
Я ведь не ошибаюсь — ее нет? У php есть php.net документация на котором ведется разработчиками, у python есть python.org, но я не встречал официального сайта по js (ну и кстати по CSS тоже). Есть learn.javascript есть mozilla MDN (но mozilla само по себе open source сообщество и это как я понимаю просто ребята молодцы и своими силами собирают в одном месте информацию), есть кучи статей на хабре или видео на ютубе, но ни одного сайта не видел который можно было назвать официальным и первоисточником.
Я хочу понять как работает сборка мусора в javascript и какой жизненный цикл переменных в браузере, в какой момент очищается оперативная память, выделенная под определенную переменную и так далее.
Но нет.
«современный синтаксис» задания переменных не помещает их в свойства window.
Только test 3 заданная через устаревший var попала в window. Остальные переменные — нет. А значит почему они «живы» мне не ясно)
инпут не должен находиться внутри тега лейбел.» — хотел написать я, а потом открыл
developer.mozilla.org/ru/docs/Web/HTML/Element/label
и увидел что можно и так и так )
Попробуйте вообще убрать айдишник с лейбла, поскольку если инпут у него внутри, то он не нужен.
ajaxform в случае успешной отправки делает reset для формы и видимо в этот момент что-то идет не так.
Попробуйте просто в консоли браузера получить свою форму и вызвать у нее метод reset