15 октября 2020, 19:36 1. Объект user просто определен выше по логике кода. Он не существует сам по себе. Читаем цикл for in 2. Переменные имеют область видимости. Она ограничена круглыми или фигурными скобками. Читаем область видимости. Попробуй вызови в консоли element за пределами ближайшей фигурной скобки 3. Как только область видимости заканчивается — сборщик мусора уничтожает переменную и ее можно объявить заново. В цикле можно заново объявлять переменные на каждой итерации. Читаем про сборщик мусора. 4. Есть такое правило ВСЕГДА использовать const при объявлении переменной. Это связано с тем что далее нельзя будет изменить ее тип и при объявлении четко понятно какого типа переменная. Исключение — если изначально понятно что переменная ниже будет перезаписана. И это объявление тоже служит сигналом для читающего код что где то ниже переменная будет перезаписана. Таким образом const и let это еще и информация о судьбе переменной. Будет ли ниже ее изменение. Вопросы / Переменная в javascript. Нужна помощь в теории. 32 0
12 октября 2020, 19:38 Наверное вот такие вопросы и возникают потому что все на бегу а не основательно и по порядку. Очень рекомендую уроки по JS Владилена Минина. У него превосходный канал на Ютубе с отличным контентом и есть полноценные курсы начиная от основ JS до всевозможных фреймворков. Ну и практика конечно. Вопросы / Переменная в javascript. Нужна помощь в теории. 32 0
10 октября 2020, 10:31 Для небольшого сайта вообще не имеет смысла использовать компоненты. Наиболее полезно и безгеморно написать парочку плагинов своими силами и радоваться. Вопросы / Компонент для реализации мультиязычности 6 0
07 октября 2020, 20:03 Если уж корректируете код и используете феном — старайтесь корректировать его до конца В чанках нужно использовать родной синтаксис фенома и вызывать плейсхолдеры через $ 'tpl' => '@INLINE {$content}',where должен использовать массив данных. для фенома это [ ] так и запись проще получается без конкатенации и можно использовать многострочный ввод 'where' => [ "pagetitle" => $_modx->resource.brand ]Итого получаем {'pdoResources' | snippet : [ 'parents' => '1', 'depth' => '0', 'includeContent' => '1', 'tpl' => '@INLINE {$content}', 'where' => [ "pagetitle" => $_modx->resource.brand ] ]} Вопросы / Как выводить почти одинаковые блоки контента на разных страницах? 7 +2
02 октября 2020, 16:26 Ну если на JS только hello world писать — то конечно это бессмысленое занятие. А если в проекте половина на JS написана — это уже другой разговор. А попробуйте разделять код проекта на логические модули, каждый из которых находится в отдельном файле. А попробуйте еще библиотеки и инструменты для работы подключать из npm например. Чтобы еще раз не отвечать зачем вообще все эти node_modules если можно любую нужную библиотеку локально скачать — сразу отвечу. Чтобы через полгода одной командой npm update обновить сразу все используемые библиотеки и зависимости. Вы же наверное следите чтобы версия MODX свежей была на тех проектах, за которые отвечаете. Так и за другими составными частями следить нужно. А использовать NPM это самый простой способ. И еще позволю себе совет — вместо того чтобы в каждой ветке новые длиннющие рассуждения писать — было бы полезно тратить этот час в день на самообразование. Но это лишь мое мнение, которое я просто оставлю здесь. Спасибо. Пойду займусь самообразованием )) Пошаговые инструкции / Деплой проекта на сервер из Github 23 +1
02 октября 2020, 15:40 Это ошибочное поспешное мнение. Во первых webpack не обязательно создает хешированные имена файлов, а вполне себе способен перезаписывать один и тот же файл — достаточно при конфигурации имя указать. Да собственно и все. Во-вторых писать не зачем. Собираете фронт у себя на компьютере, выгружаете на сервер. Точно так же, как если бы работал с GULP сборщиком например. Пошаговые инструкции / Деплой проекта на сервер из Github 23 +1
27 сентября 2020, 18:36 А что тут копать. Писать код нужно. 1. Добавить одну дополнительную таблицу для хранения информации о прикрепленных файлах и создать ее модель 2. Добавить связь с этой таблицей других «соседних» моделей компонента 3. Чуть-чуть доработать сохранение комментария. Ну… просто добавить методы сохранения изображений. 4. Ну и на фронте сделать по вкусу загрузчик. За день можно управиться. Новые дополнения и их версии / easyComm - дополнительное поле Изображение 41 +1
24 сентября 2020, 07:02 Мне кажется шаблон вывода стоит вынести в отдельный параметр tpl Нехорошо разметку посреди кода пихать. Готовые решения / Localizator. Атрибут hreflang для мультиязычных сайтов 2 0
23 сентября 2020, 19:51 Можно. Чего ж нельзя то. Иван написал универсальный пример. Чуть чуть доработать под схему вашей CRM и будет счастье Готовые решения / Hook Formit. CallTouch + MODX 6 0
16 сентября 2020, 14:44 Тот случай когда скрипт как скрипт, ничего необычного. Но все лайкнули пост, просто потому что Иван — красавчик! Готовые решения / Hook Formit. CallTouch + MODX 6 +1
14 сентября 2020, 10:23 К Сергею лучше обращаться на его сайте Modzone Если не ошибаюсь, он здесь больше не появляется. Хотя может и читает. Готовые решения / [Tickets] Превращаем комментарии в отзывы 53 0
10 сентября 2020, 18:17 Измените раздел на вопросы По существу — у вас поди head или body не закрыт Вопросы / formit ajaxform 16 0
03 сентября 2020, 08:19 Думаешь разработчик прямо каждый вопрос читает, на упоминание своего компонента? Хотя бы в профильной заметке напиши свою просьбу. Вопросы / как передать в tv field значение userid 15 0
03 сентября 2020, 08:17 Очнулся. Их уже года два как отменили. Можно поискать аналоги, предоставляющие API. Я думаю автор этого и аналогичных компонентов с удовольствием скажет спасибо за подборку и включит один из сервисов (если такие будут) в компонент. Новые дополнения и их версии / Localizator 1.0.7-beta 52 0
26 августа 2020, 16:24 Разработчик ничего не должен. По мере свободного времени выпустит. Но не обязательно как обновление. Это запросто может быть другой компонент за отдельные деньги. Новые дополнения и их версии / [msShiptor] — расчет стоимости доставки «Shiptor» 91 -1
22 августа 2020, 21:04 PdoTools умеет подгружать данные из любой таблицы вообще. Главное чтобы она была доступна для чтения из MODX Вопросы / поиск по полям юзера 2 -1
MobileDetect 2.0.0-pl функция "планшеты как стандартные браузеры не работает" в 2.1.0-pl баг исправлен
msImportExport не сохраняет родителя по умолчанию Компонент не понимает кирилические домены при загрузку фото. пример: Error download. Url : https://антаресдвери.рф/upload/iblock/a50/a50b2ef45305a3c18f6e298f1e134880.jpg. Message...
Где можно править тексты и заголовки писем? «Управление словарями» находится в панели администратора по пути: меню Система (иконка в виде шестеренки) -> Управление словарями.
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3 Токены для ИИ-агентов, чтобы они могли работать с доской. Подробнее написал тут Баг проверю и постараюсь исправить.
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3 Лучше автоматический ci/cd настроить и не править прод напрямую. Это самый безопасный вариант. Другое дело, что далеко не каждый владелец сайта и далеко не каждый сайт готовы в авт...
[videoGallery] Видео галерея YouTube, Vimeo Невозможно установить пакет с подписью: videogallery-1.4.0-beta Ошибка установки Error в /core/packages/videogallery-1.4.0-beta/modCategory/7fc931a7772edc9752c16e9c41eb5e52.reso...
Релиз miniShop2 ver. 4.4.1 & 4.4.2 Подскажите пожалуйста, может я что-то не знаю или упустил. Но есть ли решение по глюку с radio? Указываешь свое radio c одинаковым name и в результате при переключении получаешь вс...
2. Переменные имеют область видимости. Она ограничена круглыми или фигурными скобками. Читаем область видимости. Попробуй вызови в консоли element за пределами ближайшей фигурной скобки
3. Как только область видимости заканчивается — сборщик мусора уничтожает переменную и ее можно объявить заново. В цикле можно заново объявлять переменные на каждой итерации. Читаем про сборщик мусора.
4. Есть такое правило ВСЕГДА использовать const при объявлении переменной. Это связано с тем что далее нельзя будет изменить ее тип и при объявлении четко понятно какого типа переменная. Исключение — если изначально понятно что переменная ниже будет перезаписана. И это объявление тоже служит сигналом для читающего код что где то ниже переменная будет перезаписана. Таким образом const и let это еще и информация о судьбе переменной. Будет ли ниже ее изменение.
Очень рекомендую уроки по JS Владилена Минина. У него превосходный канал на Ютубе с отличным контентом и есть полноценные курсы начиная от основ JS до всевозможных фреймворков. Ну и практика конечно.
Наиболее полезно и безгеморно написать парочку плагинов своими силами и радоваться.
В чанках нужно использовать родной синтаксис фенома и вызывать плейсхолдеры через $
where должен использовать массив данных. для фенома это [ ]
так и запись проще получается без конкатенации и можно использовать многострочный ввод
Итого получаем
А если в проекте половина на JS написана — это уже другой разговор.
А попробуйте разделять код проекта на логические модули, каждый из которых находится в отдельном файле.
А попробуйте еще библиотеки и инструменты для работы подключать из npm например.
Чтобы еще раз не отвечать зачем вообще все эти node_modules если можно любую нужную библиотеку локально скачать — сразу отвечу. Чтобы через полгода одной командой npm update обновить сразу все используемые библиотеки и зависимости.
Вы же наверное следите чтобы версия MODX свежей была на тех проектах, за которые отвечаете.
Так и за другими составными частями следить нужно. А использовать NPM это самый простой способ.
И еще позволю себе совет — вместо того чтобы в каждой ветке новые длиннющие рассуждения писать — было бы полезно тратить этот час в день на самообразование. Но это лишь мое мнение, которое я просто оставлю здесь. Спасибо. Пойду займусь самообразованием ))
Во первых webpack не обязательно создает хешированные имена файлов, а вполне себе способен перезаписывать один и тот же файл — достаточно при конфигурации имя указать.
Да собственно и все. Во-вторых писать не зачем.
Собираете фронт у себя на компьютере, выгружаете на сервер. Точно так же, как если бы работал с GULP сборщиком например.
1. Добавить одну дополнительную таблицу для хранения информации о прикрепленных файлах и создать ее модель
2. Добавить связь с этой таблицей других «соседних» моделей компонента
3. Чуть-чуть доработать сохранение комментария. Ну… просто добавить методы сохранения изображений.
4. Ну и на фронте сделать по вкусу загрузчик.
За день можно управиться.
Нехорошо разметку посреди кода пихать.
Если не ошибаюсь, он здесь больше не появляется. Хотя может и читает.
По существу — у вас поди head или body не закрыт
Это запросто может быть другой компонент за отдельные деньги.