только что исправил все VAR на const и let.
Так чем же он плох?
Пожалуйста опишите список критериев плохого качества.
Я этот плагин за 3 дня накатал, Это как бы RC1 версия.
2 вместо 1 плагина, ну да в общем то. Ну так у обоих методов крайне разное предназначение и логика. Иначе простота просто испарится.
Выгрузка и загрузка всех данных в массив, Вы правы было бы полезно. В принципе там выгрузка уже есть, jQuery().var()-выгружаются все переменные, jQuery().event()-выгружаются все методы, jQuery().event('varName')-выгружаются все события для переменной.
Наверно по Вашему совету добавлю и загрузку всех объектов, что-то вроде:
jQuery().event({}) и jQuery().event('varName',{}); загрузка всех событий и загрузка всех событий для переменной.
.
По поводу пространства имен, суть внутри плагина просто будет создаваться различные массивы для разных selector, и хранится все эти разные массивы как бы должны внутри плагина. Значит при вызове плагин смотрит строку селектора и начинает использовать только тот массив ключ которого совпадает с селектором.
Это было бы удобно для создания своего виджета, А как часто бывает вдруг внезапно по приказу свыше виджет нужно клонировать на главной странице сайта.
Да действительно если бы я придерживался требования делать все водном модуле, то решение было бы только одно, делать как плагин MY, от сюда возникают множество мучений и костылей и впихнуть все (не совместимое) в один метод, и это получится сделать только через объект с нужными именами свойств. И если бы я бы взялся бы делать по такому правилу, то, во-первых, была бы потеряна главная идея простота. Во-вторых, второго аналогичного велосипеда с другим именем просто не нужно, никому. Поэтому я согласен с Вами что модуль этот, по сути, должен был быть аналогичный велосипед, но не доделанный, но я не соглашусь с тем, что нужно делать ущербный инструмент в угоду правила 1 вместо 2 модулей.
Очевидное улучшение – не писать jQuery().event на каждый контрол, а делать один вызов и передавать туда объект, например так:
jQuery().event() и jQuery().var() — методы для разделения логики интерфейса от бизнес логики.
Использование в jQuery().event() массив объектов для групповой привязки ни чего функционального не добавляет. Легко реализовать в for(){}, ну и если конечно добавить Ваше предложение, то это увеличит модуль и его разработку в 5 раз, при этом усложнит синтаксис. А если Вы поучавствуете в разработке то мы с Вами добавим новый функционал.
Если думать дальше – имеет смысл сделать отдельные ветки для объекта с данными и с привязкой контролов к данным:
Если jQuery().event() легко привязывается к объектам
то что мешает писать так?
Объясните почему нужно писать все объектом?, что это за такой код должен быть чтобы все слеплено было в одну соплю?
Если изначально задача была отделить макет от бизнес логики.
Да и мой пример выше делает это красивей, без написания слова function().
При разработке у меня была другая идея. Реализовать возможность как бы пространства имен.
jQuery('.form1').var(....);
jQuery('.form1').event(....);
и
jQuery('.form2').var(....);
jQuery('.form2').event(....);
в не видимости друг друга, что позволит использовать одинаковые имена переменных без конфликтов.
Очень прошу Вас напишите пожалуйста код require / ES modules.
Я пытался использовать require, но если это такая библиотека JS, то не понятно как такой способ работает нативно. А если это не может работать без библиотеки, тогда почему нельзя использовать ES modules?
jQuery().event('listUsers','.listUser',function(){
let html = '';
for(let user of this){
html += "<div> <span>${user.FirsName}</span> <span>${user.LastName} зарплата: ${user.Amount} ₽ </div>"
}
return html;
})
В точку. Сложное должно работать просто.
Многие придумывают простые библиотеки со сложной инструкцией.
Задача в том чтобы не думать об инструментах при разработке, а думать только о своей поставленной задаче при использовании инструмента.
Я GitHub ом пользоватся не умею. Закачивал туда код через копипаст в веб интерфейсе.
если подскажите что надо изменить для require / ES modules и я досих пор не пойму RequireJS это отдельная библиотека или это нативный код?
подскажите как правильно модулность делать в для нативного JS?
За все Ваши замечания большой респект и уважуха. Я Выпишу этот список в ГитХаб
Уже подумывал адаптировать к эти методы к объектам HTML элементам на ванильном JS.
Вот даже не знаю, новый репозиторий создавать или как?
В целом нет пока мысли чтобы писалось красиво на ванильном пользователям при использовании библиотеки.
Возможно:
Binder.Event(...);
Binder.Event(...);
Binder.Var(...);
let bind1 = new Binder();
bind1.event(....);
bind1.event(....);
bind1.var(....);
bind1.var(....);
Не зададут. При привязке тегов, значения тегов остаются по умолчанию, как и были. Но после задания значения переменной jQuery.var() значения будут меняться.
Там логика проста, при привязке тег просто добавляется в список тегов с именем переменной. Но после присвоения значения переменной, программа проходится по списку по порядку и присваивает новое значения в теги которые находятся в с писке.
Т.е.
Если привязать тег и потом отвязать но значение тега НЕ изменится.
Постоянно бесит что тег <?= ?> вызывает ошибку.
Нельзя писать пустые теги <?= ?> так же как с комментариями <?= //$name?>.
ведь одна из задач php быть языком для шаблонов. Т.е. в разметке HTML по вставлять значения. Но тег <?= //$name?> вызывает ошибку. Для отладки приходится использовать <?php //echo $name?> Смысл тега <?= //$name?> теряется.
Я пытался создать дискусию в форуме PHP, но там сложности. Вначале это нужно обсудить, потом нужно еще что то сделать. Прям целый квест. А для начала нужно было инструкцию где то искать как нужно добавлять запросы на функции. С английским я на ВЫ. С переводчиком провалился на регистрации себя на форуме PHP. Думается что я все таки глуповат. но вроде много языков знаю PHP,C#,JS,WPF
Автор ВЫ гений!!!!!!!..
Суть PHP в том что у него был низкий вход. Типа: хочешь начать писать проги, начни с PHP.
но теперь PHP будет иметь высокий уровень. А значит конец эпохи сайтов на PHP.
При всех равных, и уровнях входа, будут изучать только JS. Будут софт писать на нем.
Так чем же он плох?
Пожалуйста опишите список критериев плохого качества.
Я этот плагин за 3 дня накатал, Это как бы RC1 версия.
Выгрузка и загрузка всех данных в массив, Вы правы было бы полезно. В принципе там выгрузка уже есть, jQuery().var()-выгружаются все переменные, jQuery().event()-выгружаются все методы, jQuery().event('varName')-выгружаются все события для переменной.
Наверно по Вашему совету добавлю и загрузку всех объектов, что-то вроде:
jQuery().event({}) и jQuery().event('varName',{}); загрузка всех событий и загрузка всех событий для переменной.
.
По поводу пространства имен, суть внутри плагина просто будет создаваться различные массивы для разных selector, и хранится все эти разные массивы как бы должны внутри плагина. Значит при вызове плагин смотрит строку селектора и начинает использовать только тот массив ключ которого совпадает с селектором.
Это было бы удобно для создания своего виджета, А как часто бывает вдруг внезапно по приказу свыше виджет нужно клонировать на главной странице сайта.
Да действительно если бы я придерживался требования делать все водном модуле, то решение было бы только одно, делать как плагин MY, от сюда возникают множество мучений и костылей и впихнуть все (не совместимое) в один метод, и это получится сделать только через объект с нужными именами свойств. И если бы я бы взялся бы делать по такому правилу, то, во-первых, была бы потеряна главная идея простота. Во-вторых, второго аналогичного велосипеда с другим именем просто не нужно, никому. Поэтому я согласен с Вами что модуль этот, по сути, должен был быть аналогичный велосипед, но не доделанный, но я не соглашусь с тем, что нужно делать ущербный инструмент в угоду правила 1 вместо 2 модулей.
jQuery().event() и jQuery().var() — методы для разделения логики интерфейса от бизнес логики.
Использование в jQuery().event() массив объектов для групповой привязки ни чего функционального не добавляет. Легко реализовать в for(){}, ну и если конечно добавить Ваше предложение, то это увеличит модуль и его разработку в 5 раз, при этом усложнит синтаксис. А если Вы поучавствуете в разработке то мы с Вами добавим новый функционал.
Если jQuery().event() легко привязывается к объектам
то что мешает писать так?
Объясните почему нужно писать все объектом?, что это за такой код должен быть чтобы все слеплено было в одну соплю?
Если изначально задача была отделить макет от бизнес логики.
Да и мой пример выше делает это красивей, без написания слова function().
При разработке у меня была другая идея. Реализовать возможность как бы пространства имен.
jQuery('.form1').var(....);
jQuery('.form1').event(....);
и
jQuery('.form2').var(....);
jQuery('.form2').event(....);
в не видимости друг друга, что позволит использовать одинаковые имена переменных без конфликтов.
Я пытался использовать require, но если это такая библиотека JS, то не понятно как такой способ работает нативно. А если это не может работать без библиотеки, тогда почему нельзя использовать ES modules?
Многие придумывают простые библиотеки со сложной инструкцией.
Задача в том чтобы не думать об инструментах при разработке, а думать только о своей поставленной задаче при использовании инструмента.
Преимущество есть, там можно привязывать списки объектов.
если подскажите что надо изменить для require / ES modules и я досих пор не пойму RequireJS это отдельная библиотека или это нативный код?
подскажите как правильно модулность делать в для нативного JS?
За все Ваши замечания большой респект и уважуха. Я Выпишу этот список в ГитХаб
Вот даже не знаю, новый репозиторий создавать или как?
В целом нет пока мысли чтобы писалось красиво на ванильном пользователям при использовании библиотеки.
Возможно:
Там логика проста, при привязке тег просто добавляется в список тегов с именем переменной. Но после присвоения значения переменной, программа проходится по списку по порядку и присваивает новое значения в теги которые находятся в с писке.
Т.е.
Если привязать тег и потом отвязать но значение тега НЕ изменится.
Скриншоты хорошо, характеристики, описание.
Но в начале статьи должно быть понятно о чем вся статья.
Тупо мыло до середины статьи.
Нельзя писать пустые теги <?= ?> так же как с комментариями <?= //$name?>.
ведь одна из задач php быть языком для шаблонов. Т.е. в разметке HTML по вставлять значения. Но тег <?= //$name?> вызывает ошибку. Для отладки приходится использовать <?php //echo $name?> Смысл тега <?= //$name?> теряется.
Я пытался создать дискусию в форуме PHP, но там сложности. Вначале это нужно обсудить, потом нужно еще что то сделать. Прям целый квест. А для начала нужно было инструкцию где то искать как нужно добавлять запросы на функции. С английским я на ВЫ. С переводчиком провалился на регистрации себя на форуме PHP. Думается что я все таки глуповат. но вроде много языков знаю PHP,C#,JS,WPF
Суть PHP в том что у него был низкий вход. Типа: хочешь начать писать проги, начни с PHP.
но теперь PHP будет иметь высокий уровень. А значит конец эпохи сайтов на PHP.
При всех равных, и уровнях входа, будут изучать только JS. Будут софт писать на нем.