Это копия, сохраненная 16 мая 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.
Часто задаваемые вопросы:
https://github.com/xxxwww/js-thread/blob/master/Wiki/faq.md
Список материалов для изучения:
https://github.com/xxxwww/js-thread/blob/master/Wiki/learn.md
Список инструментов и направления JS-разработки:
https://github.com/xxxwww/js-thread/blob/master/Wiki/tools.md
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
http://embed.plnkr.co/W4Cja8J3QsvWkuZtVg9a/
всегда было интересно, от подобных лекций и семинаров есть какая-нибудь польза?
Общения с людьми
Всегда было интересно, почему на таких лекция все ведущие плохо одеты, плохо сложены, плохо подстрижены, прямо все у них плохо. Сеньоры с зп 300к/с могли бы выглядеть по лучше.
да это же гостевуха с народа
У сеньора ипотека на 20 лет, за которую он по 100к в месяц башляет. Остальное на пизду и личинку (от таксиста ашота) уходит.
думаешь, не бывает успешных холостых сеньоров?
Nodejs, express, cookie-parser, express-session, mongodb, socket-io, вроде все.
Пока не чувствуешь усложнения структуры, фреймворки не нужны.
Схуяли так категорично? Что в нем такого охуенно, что не может второй ангулар?
<result>
<Leads>
<row no="1">
<FL val="X">jfdskkdfa</FL>
<FL val="Y"><![CDATA[ 23131]]></FL>
Можно ли как нибудь это превратить в json или сразу в csv на node.js ? Пробовал разные модули которые возвращают объекты из этого, но добраться к свойствам смог только через н-ное количество циклов
> не понапихана из коробки куча всякого говна
> приходиться допихивать это говно ручками
> считаешь это преимуществом
Который решил запилить ИБ чтобы обучиться.
>Или к джангистам, но их даже в питоносреде ч говном мешают.
Ебнулся? Стандарт для веб-страниц де факто. Для приложений по REST используют больше фласк, конечно. Но ты так спизданул, аж пиздец.
JS != React, полуебок.
Отличия ангулара от реакта
string templates vs js views
В ангуляре нужно учить специальный синтаксис языка шаблонов, там есть специальные конструкции для биндинга, циклов, ветвлений, а в реакте можно работать с элементами при помощи обычного простого javascripta.
dirty checking vs setState
Чтобы ангуляр не сломался или вдруг не начал тормозить нужно понимать как в нём работает дата-биндинг и как с ним можно совладать, и всё это для того чтобы можно было писать не setState({field: value}), а state.field = value
Из того что есть в ангуларе из коробки, чего нет в реакте, на самом деле есть только роутинг, ajax-запросы и ебучий DI-фреймворк, использование которого приводит к тому что никто не в состоянии понять как устроено приложение.
Вывод: куча всякого говна понапиханного в ангуляр не нужна.
я учусь на курсах при конторе, они пока еще собираются юзать первый и на курсах мы будем пиать проект на первом. сам лично я бы начал сразу со второго.
Ты не особо разбираешься в ангуляре, видимо.
Нет. Это просто значит, что ангуляр для рендеринга использует шаблонизатор который на вход получает строки.
А с другой стороны, как еще человеку себя заставить столько кодить. Просто я смотрю, успешные программисты либо все молодые, либо такие вот дяди с женами, детьми и ипотеками.
> есть только роутинг, ajax-запросы и ебучий DI-фреймворк
> только
Хочешь сказать, что без этого можно обойтись?
require('js2csv')
Кстати он не выбирает данные из <FL val="Y"><![CDATA[ 23131]]></FL>
==>
{ '$': { val: 'y' } },
eh, у меня util.inspect не работает. JSON.stringify тоже самое пишет? Посмотри что $.xml() возвращает и есть ли там cdata.
ньюфагу как раз проще в реакт
JSON.stringify пишет тоже самое но строкой,
$.xml() возвращает с cdata. Я поискал по тегам xml2json cdata но нашел кейсы только с созданием xml через билдер с cdata
Объясните плз нахуя некоторые объявляя переменные переносят "," на следующую строку?
В чем смысл делать такую хуевочитаемую конструкцию это просто хипстеры или что?
Анус себе неосилятор. Я знаю больше 95% этого треда и мне печёт, когда ради дебилов упрощают технологии настолько, что с ними становится невозможно работать.
Хахаха, неосилятор подорвался
Подкиньте пару примеров хорошего кода на джаваскрипте. Желательно небольшие проекты, чтобы за вечер можно было каждый рассмотреть, понять, сделать для себя выводы.
Из за этого скрипта в /s/ ввели принудительную капчу для всех. Разве это не доказательство отличной работы?
И не знаешь кто были теми мудаками придумавшими именно такой кодестайл?
Я там понимаю табуляция или пробелы или какие кавычки это норм стандартизировать. Но кому могло прийти в голову переносить , на след строку я хз, реально выглядит так будто только лишь бы не как у людей сделать.
Там вопрос был о коде, а не о его работе.
Красота оформления кода - неотъемлемый критерий его качества.
Кодестайл задается командой в которой идет разработка. Ну или если девелопер одиночка, он выбирает тот, что ему по душе.
Меня например люто раздражает когда скобки не в египетском стиле, а
fn ()
{
...
}
И что? Это дело вкуса.
Смысл запятой в начале строки, чтобы наверное продемонстрировать что это продолжение предыдущего блока объявления. Возможно там дефайны слишком длинные чтобы бросать взгляд в конец строки.
Кодестайл может быть каким угодно, в пределах того, что подразумевает парсер языка.
Кодестайл это соглашение.
Не более того.
Ну смотри, в php у цепочки вызовов
как логичнее, если переносить строки?
(new object) ->
action() ->
action()
или
-> action ()
-> action ()
Запятые то же самое, указывают на продолжение предыдущего выражения. В данном случае кортежа дефайнов.
короче
var x = ololo
, y = ololo
, z = ololo
Это как символ --то же самое (как символ повторения предыдушего в письме)-- то есть var
Даун не может в сарказм. Алсо, причем тут время?
Только что проверил. Вычищаю, захожу - редирект на мой профиль и куки опять появляются.
Chrome, W7.
Я вычищаю, закрываю вкладку, открываю новую - сессия закрыта.
chromium\chrome\firefox, w7\w10\archlinux
Ты через resources очищаешь или через настройки?
Сейчас через resources почистил, вышлось. А через настройки не хочет.
у тебя тоже :3
на джаве написал уже? вкинь сюда
Ты ебнутый что ли? Ты что пишешь вообще.
Гугли "passport SSO"
Можно, но лучше на Java
Пример: нужно выводить имена людей и ссылки на фото, ассоциированные с определенными айдишниками.
Изначально они получаются на клиенте через api другого сервиса. Чтобы юзеры не делали лишних реквестов, я забиваю джейсончики с данными им в local storage. Хтмлка рендерится на бэке, в нужных местах стоят атрибуты вроде user-id. И нужно в этих местах либо заретривить данные из стораджа, либо добавить в очередь на очередной запрос к api, который произойдет по domcontentloaded.
Пока использую такой костыль: вместо нужных нод на бэке вставляю инлайн скрипты вроде <script>printImg(id)</script>, которые блочат рендер DOMа и проделывают всю работу. Но получается как-то грязновато.
Какие варианты? SPA не предлагать.
Поставить лоадер, пока не прогрузится дом?
Либо вотчер сделать какой-то, который будет проверять каждые н-милисекунд дом но новый элемент, который нужно заменить.
>SPA не предлагать.
Не думаю, что ты понимаешь, что значит это слово.
>Не думаю, что ты понимаешь, что значит это слово.
То, что сущности придется грузить отдельно и рендерить на клиенте. Думаю, это подмножество СПА. Такой вариант не подходит.
>Поставить лоадер, пока не прогрузится дом?
Лоадер чего?
>вотчер
Над этим подумаю, но вроде как не сильно лучше, если вообще лучше.
>То, что сущности придется грузить отдельно и рендерить на клиенте. Думаю, это подмножество СПА. Такой вариант не подходит.
Манька, к СПА это не имеет никакого отношения. То, о чем ты говоришь, можно назвать РЕСТ, но точно не СПА лол.
>Лоадер чего?
Лоадер-заглушку? Я так понимаю, основная твоя проблема это что нужно избавиться от FOUC эффекта, нет?
>Над этим подумаю, но вроде как не сильно лучше, если вообще лучше.
Лол, ну конечно лучше ручками для каждой херни прописывать скрипт, чем сделать универсальное что-то.
>РЕСТ
Что, блядь? РЕСТ - это архитектура апи. Можно сделать рестфул бэкенд вообще без js.
>ручками для каждой херни прописывать
Ну тащемта в двух циклах всего. Просто это засирает итоговую хтмлку.
Ты точно упоротый. Какие-то вообще рандомные фразы пишешь, видимо совсем новичок.
пидораха, какое отношение спа имеет к тому, что ты не хочешь делать запросы с клиента? по твоему запросы с клиента делают только в спа? ты пиздец даун тупой, как таких вообще тут терпят?
>Можно сделать рестфул бэкенд вообще без js.
сука, причем тут бекенд вообще? ты ебанат полный?
>>725325
Ну да, задали в школке сделать кое-какой сервис на веб-параше. Так-то я алгоритмист-всерос. А ты пиздец аггро-макака. Я небось репетиторством уже больше тебя зарабатываю, пока ты конкурируешь с Рафой за 0.01$ в час.
Как же мне бомбит с третьей пикчи. Суки вы пидарские, реакт - это всего лишь вьюха, это даже не фреймворк, как можно его, блять, сравнивать с ануляром? Сука, саганул раковый тред.
Советую смотреть в сторону sails. Вот тебе годный скринкаст. Через месяц уже сможешь запилить свою борду:
https://www.youtube.com/watch?v=xlOolpwwGQg&list=PLf8i4fc0zJBzLhOe6FwHpGhBDgqwInJWZ
Реакт это UI фреймворк.
А вообще под реактом имеют в виду всю реакт экосистему, типо реакт-рроутер-редакс
Читай первую строчку в ответе.
Если ты даун из деревни и не в курсе, то это отвечает один из разрабов реакта (и автор редакса)
http://stackoverflow.com/questions/36631761/when-should-i-add-redux-to-a-react-app/36657179#36657179
Мань, твои сайты-визитки это даже не фронтенд, так что иди нахуй.
>>725369
Ещё одна пидораха. Всем похуй, либа, фреймворк, модуль, пакет, только таким неосиляторам как ты припекает от этого.
То есть реакт с этими примочками позволяет прихуярить контроллеры, сделать области видиомсти и все такое?
Мне похуй что он там отвечает, если он не видит разницы между фреймворком и библиотекой - это его личные проблемы.
Научись говорить по-человечески сначала, потом может быть обсудим, что там у меня фронтенд, а что у тебя.
Даун, реакт можно и в чистом виде как контроллер использовать. Про области видимости я даже не представляю что ты там спизданул, видимо ты не в курсе про модули и бандлеры, лол.
То что ты не осилил реакт, и не знаешь что на нём можно делать - это твои проблемы.
С такими обезьянами как ты, только так и можно разговаривать. Иди дальше верстай говносайтики без фреймворков. Алсо, жквери не забудь подключить, лол, в 2016
Тебе накидать точно такие же статьи по рельсам, джанго, симфони и другим фреймворкам?
Понимаю твою боль.
Я ничего не кидал
Давай, про AR. Очень интересно.
>Про области видимости я даже не представляю что ты там спизданул
Все ясно. Надо было сразу сказать, что ты нихуя не понял, дебил.
>То что ты не осилил реакт, и не знаешь что на нём можно делать - это твои проблемы.
Слышь, гной, ты покажи мне где я сказал, что реакт - плох? Сука, даун, я только сказал, что они для разных целей используются. Поссал тебе на ебальник.
>Все ясно. Надо было сразу сказать, что ты нихуя не понял, дебил.
Всё ясно. Сразу бы сказал, что ты до сих пор конкатенируешь скрипты и не используешь модули, я-то думал, я не с деревенским дурачком говорю, ахаха
>Слышь, гной, ты покажи мне где я сказал, что реакт - плох? Сука, даун, я только сказал, что они для разных целей используются. Поссал тебе на ебальник.
Хуёво ты сказал, так как используются они для одних и тех же целей, при этом реакт более легковесный и кастомизируемый, и не тащит за собой тонну говна.
Алсо, ты настолько тупой, что опровергаешь фразу разраба реакта, ахах. Ну да, какой-то говноед-неосилятор лучше знает, чем дев реакта. Пиздец манямирок
Потому что ануляр не про разработку, а про срач.
Они думают, что если на сайте 2013 года сказано, что реакт это либа, то так оно и есть. А то, что в 2016 году это уже полновесный самостоятельный фреймворк они не догадываются, т.к. ни разу не использовали его до сих пор.
Так-то реакт это самый просто для изучения фреймворк. Пропсы, стейт и лайфсайкл методы, всё, больше ничего знать не нужно, никакого специфичного странного синтаксиса (только названия методов нужно знать, но их там буквально с десяток максимум)
> Они думают, что если на сайте 2013 года сказано, что реакт это либа, то так оно и есть.
РАЗРАБОТЧИКИ НАГЛО ВРУТ?
> А то, что в 2016 году это уже полновесный самостоятельный фреймворк они не догадываются, т.к. ни разу не использовали его до сих пор.
Такс такс, сделай мне ажакс-запрос или зароуть страничку на этом полновесном самостоятельном фреймворке
Такс такс, сделай мне ажакс-запрос на ангуляре, если ты понимаешь о чем я.
>РАЗРАБОТЧИКИ НАГЛО ВРУТ?
Им просто похуй на эти термины. Все прекрасно понимают, что реакт это фреймворк.
>Такс такс, сделай мне ажакс-запрос или зароуть страничку на этом полновесном самостоятельном фреймворке
Лол, теперь чтобы сделать аджакс, мне нужно использовать сторонние либы??? Пиздец, вот дауны разрабы пошли, даже не умеют нативный xhr использовать, ахах.
АЛсо, нахуя мне иметь аджакс-враппер в ui фреймворке, ты даун совсем?
Роутинг на изи делается, достаточно посмотреть, как сделан simple react router. Просто делаем рутовый компонент, который смотрит на location и рендерит нужный компонент-ребенок. Раньше так постоянно делал для простых приложух.
>РАЗРАБОТЧИКИ НАГЛО ВРУТ?
Тебе же скинули мнение разработчика со стака. Теперь они считают, что это фреймворк, раньше была либа, да. Ты вообще видел, сколько реакт сейчас весит? По твоему это либа на 150кб?
Да
ОФИЦИАЛЬНЫЙ САЙТ ВВОДИТ В ЗАБЛУЖДЕНИЕ? ЗАЧЕМ? ЧТОБЫ АНГУЛЯРЩИКИ НАС УНИЖАЛИ?
Всем похуй на названия, кроме неосиляторов, которые умеют только кукарекать на форумах, при этом написать ничего не могут.
Алсо, РАЗРАБ РЕАКТА ВВОДИТ В ЗАБЛУЖДЕНИЕ??? ЗАЧЕМ? ЧТОБЫ У ТАКОГО ПЕТУШКА, КАК ТЫ ПОДГОРЕЛ ПЕРДАК? лол
> Лол, теперь чтобы сделать аджакс, мне нужно использовать сторонние либы??? Пиздец, вот дауны разрабы пошли, даже не умеют нативный xhr использовать, ахах.
> АЛсо, нахуя мне иметь аджакс-враппер в ui фреймворке, ты даун совсем?
Ну если тебе норм писать 20 строк вместо 3 для вещей, которые используются в каждом втором компоненте, тогда ладно. Даже спорить бессмысленно.
> Роутинг на изи делается, достаточно посмотреть, как сделан simple react router. Просто делаем рутовый компонент, который смотрит на location и рендерит нужный компонент-ребенок. Раньше так постоянно делал для простых приложух.
Тебе не кажется странным, что в этом полновесном самостоятельном фреймворке нужно велосипедить вещи, которые используются в каждом проекте?
>>725426
Дауны итт
> Фреймворк отличается от понятия библиотеки тем, что библиотека может быть использована в программном продукте просто как набор подпрограмм близкой функциональности, не влияя на архитектуру программного продукта и не накладывая на неё никаких ограничений.
Все последние 10 лет. Хуита получается.
>Ну если тебе норм писать 20 строк вместо 3 для вещей, которые используются в каждом втором компоненте, тогда ладно. Даже спорить бессмысленно.
Если для тебя тащить какую-то обертку хуй знает как написанную и хз сколько весящую это норм, вместо того чтобы самому написать её за 20 строк, а потом использовать в одну строку, то тут вообще что либо бессмысленно говорить, т.к. тупее ебаната я ещё не видел.
>Тебе не кажется странным, что в этом полновесном самостоятельном фреймворке нужно велосипедить вещи, которые используются в каждом проекте?
Лалка, до твоего мозга слабо доходит, что такое ui фреймворк. В общем, что я спорю, сиди дальше жри говно под названием ангуляр, мне только лучше от этого, меньше народу, больше кислороду зарплата.
Если ты не смог этого сделать, это не значит, что нельзя, это просто говорит об уровне твоего интеллекта.
А еще чтобы проверить является ли аргумент целым числом тебе надо полизать свой локоть
Пиздец дегенерат, лол
> Если для тебя тащить какую-то обертку хуй знает как написанную и хз сколько весящую это норм, вместо того чтобы самому написать её за 20 строк, а потом использовать в одну строку, то тут вообще что либо бессмысленно говорить, т.к. тупее ебаната я ещё не видел.
Это можно про всё что угодно сказать. Про реакт, в том числе. Всё хуй знает как написанные обертки, а твои решения, конечно, лучше, чем ребят из фейсбука и гугла. Обычно так думают самые ньюфаги в погромизме
И ещё
> хз сколько весящую
В 2016, когда существует минификация и gzip - экономить на байтах, в ущерб скорости разработки, полнейший долбоебизм
> Лалка, до твоего мозга слабо доходит, что такое ui фреймворк.
Да нет, это для тебя слабо доходит что такое ui фреймворк. Мало того, до тебя вообще слабо доходит что такое фреймворк
Ты не можешь просто взять и заменить какой-либо компонент в нем, всё тесно связано
Есть какая-нибудь книжечка простая для обучения js?
ПОлно, флэнаган
Загляни в шапку
Сначала учишь азы:
SICP
Кормен - Алгоритмы: построение и анализ
Кнут - Искусство программирования
Зорич - Математический анализ
Картан - Риманова геометрия в ортогональном репере
Потом можешь приступать к http://learn.javascript.ru/
Спасибо
Какой-то профессиональный юмор.
> SICP
> Кормен - Алгоритмы: построение и анализ
> Кнут - Искусство программирования
> Зорич - Математический анализ
> Картан - Риманова геометрия в ортогональном репере
> > JavaScript тред
>Сразу бы сказал, что ты до сих пор конкатенируешь скрипты и не используешь модули
То есть ты реально настолько еблан, что думаешь. что модульность и конкатенация могут заменить разбиение по контроллерам? Ебать ты дно, выпились нахуй.
>Алсо, ты настолько тупой, что опровергаешь фразу разраба реакта, ахах.
Все ясно. Серьезный дядя сказал пидорахе, и пидораха сразу все схавала. У меня от тебя АВТОРИТЕТЫ, быдло ебаное.
Тогда я наконец смогу написать хелло ворлд на реакте?
Подумал освоить Ангуляр, но как-то боязно стало после чтения гугла:
1) Ангуляр1 или ангуляр2?
2) Насколько адекватная хабрвская статья - "Почему вам НЕ стоит использовать AngularJs" https://habrahabr.ru/post/246905/ ?
3) Какой порог вхождения? Хелловорлды, особенно для второго ангуляра не радуют понятностью и лаконичностью.
4) Как знание ангуляра сказывается на ЗП на рынке жаваскриптового прогера?
> Ангуляр1 или ангуляр2?
ангуляр2
> Насколько адекватная хабрвская статья - "Почему вам НЕ стоит использовать AngularJs" https://habrahabr.ru/post/246905/ ?
По отношению ко второй версии -- устарела
> Какой порог вхождения? Хелловорлды, особенно для второго ангуляра не радуют понятностью и лаконичностью.
По моему мнению, он ниже, чем для первого ангуляра. Тебе не нужно учить устройство кучи разных компонентов, нужно только понять как строятся компоненты, потому что интерфейс унифицировали
> Как знание ангуляра сказывается на ЗП на рынке жаваскриптового прогера?
Крайне положительно
Я бы первый ангуляр навернул. Тайпскрипт еще не все браузеры адекватно кушают + второй ангуляр вообще в бете. А первый - проверенное и отлаженное средство, работает на ура.
Спасибо за оперативность.
У меня ещё чуть-чуть вопросов:
1) Есть ли хороший, ещё лучше - русскоязычный гайд с примерами?
2) Хорошо ли сочетаются решения решения на ангуляре2 и джикуэри?
3) Ещё какие-нибудь общие советы и подводные камни?
>Тайпскрипт
Я же правильно понимаю, что сам ангуляр2 нормально зайдёт, а код под него можно и на старом добром Жаваскрипте писать?
Нет, нельзя.
> Есть ли хороший, ещё лучше - русскоязычный гайд с примерами?
Да куча их на английском, просто загугли
https://angular.io/docs/ts/latest/
https://www.reddit.com/r/Angular2/
> русскоязычный
А вот с этим проблемы. Русское коммьюнити пока очень маленькое. Если не знаешь английский, лучше реакт сейчас взять
> Хорошо ли сочетаются решения решения на ангуляре2 и джикуэри?
Ну. Сочетаются. Только желательно оформлять их как компоненты
http://stackoverflow.com/a/30662773
> Ещё какие-нибудь общие советы и подводные камни?
Он в бете и ещё мало кто его использует. Соответственно, мало информации, которую можно погуглить
>>725498
Если он с ним не знаком - это просто трата времени будет. Да и он не сайт пилит, а админку. Главное, что у него работало.
>>725503
> код под него можно и на старом добром Жаваскрипте писать?
Да. На жаваскрипте, на тайпскрипте и на дарте. На оффсайте есть документация с примерами на всех трех языках
Лол, даже не задумывался, что так можно. Немного костылями попахивает, конечно, но тоже вполне себе вариант.
>Если он с ним не знаком - это просто трата времени будет.
Почему? Во-первых еще дохуя жизнеспособных проектов на первом ангуляре и он приобретет все еще актуальный и полезный опыт. Плюс с первого на второй анугляр будет не так уж сложно пересесть, так как понимаешь логику работы.
>Да и он не сайт пилит, а админку. Главное, что у него работало.
Если админка для себя, то да, в принципе ты прав. Но если он ее пилит для cms для какой-нибудь конторы, то тут я бы поспорил уже.
Чисто беглый взгляд:
>forced TypeScript
Нахуй так жить в 2016?
><input type="checkbox" [(ngModel)]="todo.done">
ng-то, ng-сё, зачем? Платишь шаблонами за бизнес-логику, которая вероятно быстрее запиливается, но долго ищется через пару месяцев.
>Состояние компонента?
Непонятное. Никто не может гарантировать, что компоненты всегда будут взаимодействовать так, как задумано, если, например, поменяется разметка.
>Траханье с DOM-ом
So 2013sh.
Как пользователь 1-го ангуляра и современного реакта - не вижу плюсов у ангуляра 2. Просто улучшенная копия 1-й части, в целом никакой смены концепта не случилось же: как работали с DOM, так и продолжают, как вводили кучу специфических сущностей - так и вводят. Потому наверное и нужен тайпскрипт, чтоб муки облегчить.
Если что, роутер к "библиотеке" React подключается одной командой, так же как и любая другая фигня подключается к ангуляру, если её там нет. Для реакта есть пиздатые starter-kit'ы и в них нет никаких новых сущностей - обычные npm-пакеты и настроенный webpack - вот и готов "фреймворк".
> ng-то, ng-сё, зачем?
Потому что декларативно. Декларативные интерфейсы - это очень удобно в больших проектах
Это не совсем тоже самое. В ангуляре можно создавать свои такие обработчики, которые могут и компоненты менять, и изменения отслеживать, и вообще что угодно делать.
А each и onclick это только ng-repeat и ng-click
>>725506
Блин, антоши, читаю я всё больше мануалов по ангуляру и становится страшно - просто не понимаю, откуда и зачем берутся кучи кода, как вся эта махина работает.
В jQuery всё просто было, прямая связь с html, обработчики, события, тут же куча неявных зависимостей.
Есть какие-нибудь гайды прям для особо тупых?
>свои такие обработчики, которые могут и компоненты менять, и изменения отслеживать, и вообще что угодно делать.
И как вариант - вгонять приложение в "непонятное" состояние, как я уже говорил. Реактовские компоненты в первую очередь хороши тем, что работают как чистые функции - что пришло в пропсах, то и показывается. А с redux-ом так вообще красота, все состояния как на ладони, приложение не ломается полностью от того, что где-то в конкретном месте что-то пошло не так. В ангуляре тяжело с предсказуемостью, как мне видится.
> redux
Так никто не запрещает юзать его с ангуляром
https://github.com/InfomediaLtd/angular2-redux
Ты просто не можешь представить как это всё работает. А с джквери можешь
Поиграйся немношк, должно полегче стать. У меня тоже самое было
>1) Ангуляр1 или ангуляр2?
Ангулар1. Второй - хипстерская игрушка.
>2) Насколько адекватная хабрвская статья - "Почему вам НЕ стоит использовать AngularJs" https://habrahabr.ru/post/246905/ ?
Есть адекватные мысли, но часть уже устарела и неактуальна.
>3) Какой порог вхождения? Хелловорлды, особенно для второго ангуляра не радуют понятностью и лаконичностью.
Ничего сверхсложного. Посидишь немного и поймешь.
>4) Как знание ангуляра сказывается на ЗП на рынке жаваскриптового прогера?
Положительно.
>Тайпскрипт еще не все браузеры адекватно кушают
Что? Браузеры кушают тайпскрипт без компиляции в жс?
Что значит уровня? Работать будет медленнее, а функциями может не уступать.
Возможно ли будет начать изучать программирование на js без малейшего представления о программировании в целом ? Или есть какая то основа без которой нельзя?
Ты делаешь этот как-то не так. Какая изначальная задача?
Типичный адаптивный сайт.
Почему нельзя взять бутстрап?
баскетбо
Спасибо что нам рассказал, как ты сделал.
Спс, нашел.
Реакт тоже не релизнулся, а его уже в продакшене немало кто крутит. Бета - это просто снятие ответственности.
Это означает, что они ещё не уверены, что продукт 100% отлажен и чтоб их не обложили хуями - ставят бету. Это вовсе не значит, что он будет сыпать ошибками и вообще работает как.
Не знал, что он релизнулся. Но это же ничего не меняет. Он очень долго был в бете, и никому это не мешало его использовать в продакшене
И че?) Релизнется через полгода, а ты все будешь дрочить на первый.
Нельзя в жс так
А надо ES2015
Я на сервере не могу хранить сотню миллионов ссылок. Даже на пропарсить месяцы уйдут. Плюс данные постоянно меняются. Единственный вариант - обращаться к апи.
Чтобы юзер не обращался к апи при каждом обновлении страницы, я кладу уже полученные данные в local storage.
Допилил фронтэнд
Теперь отправляюсь учить ноду. Может через месяц выкачу что-нибудь работающее
http://embed.plnkr.co/W4Cja8J3QsvWkuZtVg9a/
> Чтобы юзер не обращался к апи при каждом обновлении страницы, я кладу уже полученные данные в local storage.
Зачем? Ты не там кешируешь. Такие вещи нужно кешировать на стороне апи
ololord.js
Алсо, пидору с его hanako хочу сказать, если он вообще тут бывает, что его поделие даже страницу в 7 раз дольше отдает. Рендерит каждый раз при отдаче, это ж пиздос. Умрет при 10 одновременных просмотрах.
в смысле?
Так значит данные могут поменяться. Зачем кешировать данные, за которые ты не отвечаешь? Я бы не хотел, чтоб мне так делали.
Ну они меняются довольно редко. Например, когда кто-то меняет авку или имя.
Можно раз в день чистить local storage. Зато пользователям, особенно мобильным, не придется каждый раз устанавливать лишнее https-соединение, делать запрос и ждать по 500ms с пустыми картинками и именами. Если после domcontentloaded очередь пуста, получится, что все как будто на бэке отрендерено, и сразу начнется загрузка картинок.
> Ну они меняются довольно редко. Например, когда кто-то меняет авку или имя.
И как ты будешь проверять, обновились они или нет?
> Зато пользователям, особенно мобильным, не придется каждый раз устанавливать лишнее https-соединение, делать запрос
Сейчас везде 3g, не думаю, что это прям большая проблема. Вот с 2g такая оптимизация имела смысл, с 3g совсем нет. На компьютерах тем более
> и ждать по 500ms с пустыми картинками и именами
Какое-то хуёвое апи. Сделай прелоэдер в таком случае.
>И как ты будешь проверять, обновились они или нет?
А я и не буду. Сохраню таймштамп и при каждом запросе буду проверять, не протух ли он. Если дельта > 24 * 3600, то все вычищаем.
>Какое-то хуёвое апи. Сделай прелоэдер в таком случае.
Ну это примерно, если говенный интернет. SSL-хендшейк, syn/syn-ack/ack, скачка, лишний проход по дому - и только тогда начнется загрузка картинок.
> SSL-хендшейк, syn/syn-ack/ack, скачка, лишний проход по дому - и только тогда начнется загрузка картинок.
Ну и похуй же, это миллисекунды. Задержка в пару сот миллисекунд лучше, чем неактуальные данные
200 мс - это дохуя. Актуальность данных в данном случае некритична.
Но если уж так хочется, можно делать запрос к апи после рендера с данными из кэша. Получаем лучшую отзывчивость и риск неактуальности данных всего в 1 запрос.
Манька, ты думаешь не о том совершенно. Ну да, ладно, ты молодой, зеленый, потом поймешь.
function createCounter() {
var numberOfCalls = 0;
return function() {
return ++numberOfCalls;
}
}
var fn = createCounter();
----
var numberOfCalls = 0 - создается локальная переменная в зоне видимости функции,
дальше возвращается функция которая увеличивает локальную переменную на 1,
Потом это присваивается в переменную fn, и при каждом вызове переменной fn - выполняется return ++numberOfCalls ? Всё верно?
Ага
Так пидоры делают. Я бы не хотел сменить аватарку и ещё день видеть старую. Это вводит в пиздец какое заблуждение.
Так я же написал альтернативу. Запрос к апи делается сразу же после рендера из кэша. Максимальное устаревание - 1 запрос.
>не похожее даже на кофескрипт
И это хорошо. Кофескрипт не просто так умер.
https://habrahabr.ru/post/195944/
У тебя нихуя рабочего нет, а ты уже оптимизацией занялся. Сажи долбоебу.
Двачую, братан.
Уже есть. Щас привожу в окончательный вид, и вот это местечко пованивает.
Читаю каждый день по часу перед работой, пока осилил только 100 страниц за 7 часов и уже охуел. Там еще 900!, это значит если я за неделю сто, то за 8 недель освою эту книгу? Программирую если что на си++, на js опыт около трех месяцев быдлокода
Алсо, может у кого - нибудь тестовые задания после собеседования остались?
Прочитал карманный справочник Фленагана за четыре дня лежания в дурке. Поскольку других книг у меня с собой не было, читал заново раз за разом в течении двух месяцев. Правда из за невозможности проверить код на деле толку от этого было мало.
Прочитать и понять - разные вещи. Я могу прочитать хоть Ландау и Лифшица, но нихуя при этом не понять.
Что за тупая статья? Замени кофе на лайв, тайп или дарт - ничего не изменится
Тайп приносит полноценное ООП и статическую типизацию. Кофе приносит только порцию сахара и ничего больше.
Вот тебе тестовое задание.
https://jsfiddle.net/4Lc7sqzt/
Написать код, который должен вешать класс .red на label, когда чекбокс выделен. Использовать jQuery.
Так я и не говорю, что оно легкое, я имею ввиду, что решение таких задач вряд ли научит тебя чему - нибудь полезному
А теперь сделай с учетом того что чекбокс уже может быть выделен.
Тоже мне проблема. Атрибут for хуйни и всё. Пиздец - в 2016 году зависеть от вложенности тегов.
В рот ебал таких дебилов.
Ну будет у тебя список таких чекбоксов, и в каждом айдишник. Как по мне слишком засранный код выйдет.
Кароч смысл задачи в том что код внутри колбека change должен проверять выделен ли чекбокс. Чекбокс может быть в любом состоянии на момент загрузки страницы и его состояние может быть измененено каким-нибудь левым кодом.
Всем похуй на задержку в полсекунды, не понимаю зачем ты этим занимаешься. Лучше бы функционал какой допилил
Мы вам перезвоним.
Бэк готов, щас верстка ссаная, вот и думаю.
Этот хтмл код еще будет глобальное пространство имен в жс засирать этими айдишниками.
Ну конечно куда лучше переключать цвета на жиквери. Вообще нельзя о таких вещах говорить уже. Это всё один сплошной моветон сегодня.
>Вряд ли научит тебя чему - нибудь, что пригодится тебе на реальной работе
>>725917
>На ленте мебиуса задана точка. Найти координаты обратной точки.
Мы разрабатываем игру, гонки на всяких хитровыебанных трассах, в том числе на ленте Мебиуса. На трассе валяются всякие бонусы, повышение скорости там или еще что. Один из бонусов для ленты Мебиуса заставляет машину игрока "провалиться" через трассу, появившись с другой стороны (таким образом игрок делает скачок вперед на полкруга). От тебя нам нужен код, который это сделает: по координатам машины укажет новые координаты.
Да мне похуй с каким ты лицом будешь это решать. Пока что я тебя на работу не беру.
И ты всерьез тут наверно обсуждаешь ангуляры всякие, а jQuery даже не нюхал.
https://jsfiddle.net/jfena5oa/
вот кстати если бы я в девяностых придумал первую имиджборду уже был бы миллионером
в девяностых тебе бы пришлось продать квартиру, чтобы купить домен и арендовать сервак хотя бы с гигом памяти
Борды приносят крайне мало денег. Вот поисковик или соцсеть было бы классно придумать
ну регистрировать будет не обязательно, это лишь чтобы ставить лайки и получать уведомления на почту
зареганый юзер все равно будет анонимным
ну идея такая
посмотрел скрипт - потерял сознание
в фаерфокс лайк поломались
Соцсеть написать не сложнее, чем борду. Это тот же круд. А вот с поисковиком все куда сложнее, да
Достаточно было бы написать твиттер и соцсеть, а после этого тебя бы взяли в любую крупную компанию того времени как успешного специалиста. Только вот писать подобное тогда было не так просто, так как не было россыпи фреймворков на любой вкус, а языки были заточены под бородатых ноулайферов. Тогда даже jQuery не было, а ванильный JS не поддерживал выбора элементов по селектору. И это только фронт. На бэке всё было ещё хуже. Даже пхп едва только появился и был малоизвестен - борду бы пришлось писать на фортране или плюсах.
> Достаточно было бы написать твиттер и соцсеть, а после этого тебя бы взяли в любую крупную компанию того времени как успешного специалиста.
Рабство - это в крови? Написать революционный продукт, который за год может приобрести миллионы инвестиций и вместо его продвижения пойти работать за топовую зп? Серьезно?
если он его напишет в россии, то ему и работа не светит, его просто скопируют и все
Посмотри на вк. Успешно прожила почти 10 лет. Съебал бы Дуров вовремя, и сейчас бы им владел
Обзмеился
В процессе. Ещё и в жопу ебать будут.
Отрендерил тебе за щеку.
Итак, последняя моя попытка или я иду мести дворы. Я знаю HTML5, CSS3, знаю JS на уровне теории, но не практики (максимум что я делал, так это написал слайдер на ванильном js). Мне интересен фротнэнд. Я понимаю, что jquery это стандарт, и я его сейчас будут учить (не с нуля, я уже делал всякие слайдики на нем), так как мои знания в нем вялые, планирую потратить на это следующую неделю полностью. Далее что? Angular или Meteor? Куда проще вкатиться, где больше работы и она легче? У меня просто не так много времени, хочу к концу мая начать фрилансить за еду.
Скажет кто какой-нибудь тестовый проект для подобной поеботы на поиграться
а то идей нема(
Писать на Meteor ты не сможешь без знания ноды уровня "выше среднего". Во фронт-енде у тебя много вариантов.
Лидеры: React и Angular
Популярные, но не стандарт: Ember, Vue, Polymer
Старые и проверенные: Backbone и Knockout
Напиши браузер двачей для всех мобильных платформ.
Не он а его батя
Github считает языком. Это и есть язык, но не программирования, а язык стилей.
Поехавший.
По дефолту они все необязательны.
Это ты будешь заморачиваться с проверкой на обязательность их.
Нет. Он хуйню пизданул просто.
У тебя же в девтулс есть EventListeners, присмотрись.
Это можно только в es6
Если бы ты попал в прошлое отсюда, то смог бы хапилить там всё, чего ещё не было.
У дурова до вк были и другие успешные по посещаемости проекты.
Я помню вк еще в бете и по инвайтам, только для студентов спбгу, он тогда даже не казался серьезным чем-то и очень был похож на кучу подобных закрытых клубасиков по интересам.
Это потом он его переформулировал (и мне кажется что ему кто-то подсказал, ну или он сам дошел в процессе разработки).
Там же даже первые пару лет в html коде весело ориджинал название изначальное - студенты или что-то такое, я не помню сейчас.
Ничего подобного.
Подмастерьем идешь и всему учат на месте, если это какая-то не профильная должность.
Начнешь с разнорабочего како-нибудь.
я слишком элитарен для этого
This is a magic.
А если бы был, то не стал бы считать ie11 не современным браузером все равно.
да
нет
Может быть
Да.
Нет.
И как сделать, чтобы первый слайд при загрузке странице не отрабатывал анимацию, а в следующие круги отрабатывал?
https://jsbin.com/luyeguyedu/1/edit?html,js,output
проиграл с ванилы
Да, думаю перекатиться в андроид. Проще ангуляров, платят больше. Ангуляр это заговор жидомасонов, чтобы сократить количество фронтэндеров. Жалуетесь на отсуствие разработчиков? Теперь живите в проклятом мире, который сами и создали.
Ты что, даун? Ангуляр - это попытка сделать яву на фронтенде. Второй с тайпскриптом вообще ява явой.
Ну вот пришли джавадебилы в мой любимый жс и все изговнякали. Я тоже к ним в джаву пойду и все изговнякаю.
Я уже.
а МТС хуевый провайдер.
Вкатываюсь в ваш дивный мир из QA отдела. Просто пришел поприветствовать и делиться с вами хелловорлдами.
Пиздец ты хуйней маешься, друг.
Двигай через .style.margin, перемещай так, чтобы в центре был текущий слайд, если хочешь замкнуть, то дублируй слайд. Анимацию через transition. Наворотил кода пиздец.
А хуй его знает. Есть рубихуета на кукумбере для бэк-энда, есть жабаскрипт, какой-то СВОЙ фрэймворк, есть ДЖАВА.
http://learn.javascript.ru/settimeout-setinterval#тормозилка
И сколько времени потребовалось бы вам, чтобы найти решение к этой задаче самостоятельно? У меня даже представления нет на свой счет.
https://jsbin.com/nuxugaxugu/1/edit?html,js,console
Заняло хуй знает, но дольше, чем я думал.
Разобрался с основными понятиями языка, написал пару модулей, написал аиб, пишу на js чуть больше года. Считаю, что только начал использовать его полноценно, раньше не чувствовал свободы js, а он именно для этого и делался. Для ощущения свободы во время программирования.
За счет понимания runtime, знания паттернов, понимания того, что я делаю, знания некоторых how-to, знания того, как работают стандартные структуры и методы.
"Книга Эклезиаста" - вещь!
А можно пример psd для того чтобы его от2htmlить? Мне интересно, вроде как позиционировать-стилизовать элементы умею, но может я не до конца представляю этот процесс.
На каком уровне нужно её знать? Я думал фронт-енд чуваки пишут всякую логику, а верстальщик это отдельная профессия. Кажется, ошибался.
По идее код фронт-ендщика работает непосредственно с версткой потому ему необходимо знать принципы верстки чтобы уметь ею манипулировать в коде.
В хороших компаниях должность фронт-эндщика и верстальщика разделена. Но перед тем, как попасть в хорошую компанию, тебе придётся навернуть говнеца в виде мелких контор, в которых нужно уметь всё.
var nodes = document.getElementsByClassName("test");
var size = nodes.length;
for (var i = 0; i < size; ++i) {
nodes.classList.toggle("test");
}
После toggle какого-то хуя элемент исчезает из массива nodes, что ломает всю итерацию.
Верстка это считай часть твоего окружения.
Ты будешь работать с ней в том числе. Ты обязан в ней разбираться и знать разного рода нюансы.
Ты потому что не одупляешь ничего.
По гетбайкласс, ты хапрашиваешь ноделист,а он живой.
Разумеется когда ты убираешьу элементов класс по которому у тебя составлен ноделист, то он исчезает из него. Что непонятного?
Если тебе нужен массив элементов, т блядь преобразовывай его в массив.
Поприходят их своих типизированных языков, а о типах не бум бум.
А если у тебя паралельно асинхронно дургой обработчик будет в это время навешивать это класс обратно, У тебя случится бесконечный цикл и ты обосрешься.
Архитектурой не предусмотрено. Но было бы даже заебись. В моем случае класс говорит, что в ноде надо прописать новые данные. Автообновление из коробки.
Бесконечный цикл без таймаута между итерациями, постоянно работающий с домом, это не заебись, чувак.
Он никогда не будет бесконечным, класс навешивается не в цикле.
Я некоторые задачи от туда мог дня 2-3 решать. Как там хорошо заметили в комментариях, эти уроки предназначены для многократного прочтения. После первого прохождения вряд ли что-то в голове уложится. А ведь это только азы! Короче, программирование - это очень-очень сложно.
Да. Я когда писал свой первый хеллоуворлд чувствовал себя больше программистом, чем спустя полгода регулярных занятий.
К тому же джаваскрипт сам по себе не представляет ценности, надо хорошо знать верстку, владеть библиотеками и фреймворками, неплохо бы освоить ноду, а там джэс вообще как птичий язык выглядит и вообще хуй поймешь как все работает.
Про профессию громко сказано, пока это только хобби, через пару лет будет ясно, станет ли это чем-то большим.
Могу сказать тоже самое про тебя.
о, я в этом стал действительно хорош!
Там же детский уровень типа "а вот это переменная, в ней что-то хранится", разве нет?
Также там есть курс по созданию интерактивного веб-сайта, где ты пилишь сайтец на html+css+js.
Полистай курс. Там можно перейти к любому уроку, который вперде.
если я написал это говно
http://embed.plnkr.co/W4Cja8J3QsvWkuZtVg9a/
мне его все равно надо проходить?
Я не поэт.
Я компилятор.
Я манипулятор.
Я тайный агент.
Помянем.
Ну понятно что не через юзерскрипт с жквери это делать. На ноде там что-нибудь написать, например. Просто я даже не знаю, как оно там устроено, могу ли я относительно просто послать запрос как от браузера, а затем получаемые данные не воспроизводить?
У каждого из перечисленных тобою сервисов может быть своя уникальная защита от подобных выебонов, выражающаяся в том плане, что там не просто поток, а по какой-нибудь хитрой схеме с доработкой чанков на клиенте (например они могут приходить не по порядку, а восстанавливаться уже на клиенте, или еще что, это чисто пример). Изучай реквесты, копай сначала как доставляет этот поток каждый из них, как выловишь алгоритм и сможешь сообразить что к чему, уже перехватый и пиши. Но универсального решения там нет.
http://docs.livestreamer.io/cli.html#file-output-options
если тебе не для обучения то уже есть готовые решения
>например они могут приходить не по порядку, а восстанавливаться уже на клиенте
А кто в такому случае восстанавливет? Флеш-приложение, а браузер не в курсе?
>>727211
О, вот за это спасибо, помимо использования ещё и в коде покопаюсь, к тому же и на питоне. У меня основная проблема-то была в получении пути к потоку, откуда его вообще брать (это ж не ссылочку в коде страницы на .mp4 на видеохостингах найти). Проглядел плагины для некоторых сайтов, и в основном всё через имеющиеся апи делается, плюс куча всего сложного. Придётся разбираться.
>А кто в такому случае восстанавливет?
Мне может за тебя еще и написать всё.
Иди лезь и изучай.
Я сужу просто по тому, что тот же ютуб и в случае непотокового видео за период своего существованию не раз менял алгоритм доставки и сборки его на клиенте.
Не обязательно флеш. JS же есть.
Да и даже если флеш, суть не в нем, а в алгоритме. Это твоя задача.
Значит так, сучара, прямо сейчас ишешь бесплатный ПСД шаблон, скачиваешь и ВЕРСТАЕШЬ его! От начала и до конца. Потом поговорим.
>Мне может за тебя еще и написать всё.
В смысле за меня написать? Ты говоришь, что есть какая-то там защита. Но если браузер это делает клиент на ЖСе, значит вся необходимая информация, чтобы видео на страничке проигрывалось, этому браузеру предоставляется, то есть её могу получить и я? В этом вопрос: просто разобраться в полученной инфе или сидеть ковырять-угадывать что-то нужно.
>просто разобраться в полученной инфе или сидеть ковырять-угадывать что-то нужно
Ну и чем по-твоему одно отличается от другого?
У тебя есть маны по получаемой инфе/ внутреннему api сервисов?
Ну, эм, вот у мозиллы, вроде бы, нет никакой докуметации от какого-нибудь китайского 9158.com, но видео я там вижу. Т.е. используются какие-то стандартные протоколы, о которых есть информация, потому браузер и может правильно воспринимать и проигрывать этот поток.
В общем, забей, по лайвстримеру буду пытаться понять, как там чего делается.
Ну, эм, вот у мозиллы, вроде бы, нет никакой докуметации от какого-нибудь китайского 9158.com, но видео я там вижу. Разве при желании фф не мог бы весь этот готовый видео/аудио-вывод писать на диск? Или-таки у браузера тоже нет как такового доступа к самим данным?
В общем, забей, по лайвстримеру буду пытаться понять, как там чего делается.
> кросс-браузерного запроса
Что это значит? Кроссдоменного может?
> И классы и идентификаторы на страницы яндекс.маркета сменились
Чтоб такие как ты не парсили, а юзали апи
Понял.
https://jsfiddle.net/jz7f7tyy/1/
Куда блять перелезть со всего этого говна?
Вим/емакс мб попробуй. Многие используют.
Нет
Смотрю SO, YT и вообще не вижу айдишников, одни классы. Но классы же не гарантируют уникальности.
Есть один txt файл, в котором текст разделен пустой строчкой:
текст1текст1текст1текст1текст1
текст1текст1текст1текст1текст1
// пустая строка
текст2текст2текст2текст2текст2
текст2текст2текст2текст2текст2
Нужно написать функцию, которая бы возвращала рандомный текст до пустой строчки построково с интервалом в 1 секунду. Как это на ноде сделать?
Первый ангуляр так не думает, лол.
Ничего не гарантирует. Бест практис тебе от меня:
- id не нужны никогда
- классы только для стилей
- обработчики вешаются на кастомные или data-атрибуты
Но, сэр, я ведь и хотел чтобы мне предложили пример этого шаблона и я бы попробовал его сверстать, я не знал что есть целые ресурсы с шаблонами. А о чем вы хотели поговорить?
Премного благодарен.
Заходите, активные JS кодеры.
Почистили 47 неактивных члена конфы, общаемся на разные темы, отвечаем по возможности на вопросы по погромированию.
Есть же слэк, ирка. Нахуй это говно?
Точно! Спасибо.
Только нужно, чтобы рандомный анекдот выбирался, а не каждый раз, при вызове, с первого.
Это не очень хороший код, но он работает.
Если этого хватит, то вот http://pastebin.com/JhJhaPTg
Изоморфность, на мой взгляд, пока еще больше концепт, чем методология. Но ноду я однозначно котирую. Быстрее REST API я поднять не смогу ни на чем.
React redux предоставляет готовые инструменты для изоморфных приложений, angular2 будет тоже. Этого не достаточно?
Реально ли сессии не рестфул? И при каждом запросе нужно передавать юзер/пасс плейнтекстом?
Токены, JWT например.
Куки в хедерах же.
Если не затруднит, приведи пример такого конкретного решения. Стоит отталкиваться от математики, т.е. сколько конкретно строк кода было использовано и там и там.
Интересует непосредственно получение constructor.name, имя класса в общем надо.
Алсо, и прототипе тоже перегружено.
Короче как получить имя класса инстанса, не используя поля constructor вообще
Сап, двач. Есть один массив объектов, выглядящий так [{id, date, value}, {id2, date2, value2}]
Запаял схему на CouchDB под id, date и value, но что-то нихуя не понимаю, как передать каждый объект массива в базу данных поэлементно, ибо {id, date, value} это один целый объект, а бд от меня требует {'id': number, 'date': Date, 'value': вроде тоже число, но не помню,}. Что делать, юзаю CouchDB.
И без утиной типизации. toString тоже может быть перегружен.
Чёрт. Есть в js какая-то рефлексия, что узнать имя класса. Я ничего придумать не могу, что-то.
она есть, constructor, но ты сам ее затираешь, вручную прихуячивать, чтоб не проебалось не вариант?
Как тут выше писали, делегирование подходит, но все равно придется проходить в цикле по остальным элементам и искать активный.
Я вот подумал, задача довольно повседневная, может уже встроили что-то типа эксклюзивных чекбоксов.
Если может быть активен только один, то можешь хранить на него ссылку, будет О(1).
Радиобаттон, если тебе прям конкретно в хтмл нужно.
А так да, так или иначе, нужно будет обходить все другие, иногда косвенно, т.е. не нужно прямо цикл делать, а просто выбираешь по классу, или чему-то ещё общему, всю коллекцию, убираешь активный класс у всех (даже если у кого-то его нету), а потом таргету добавляешь активный.
Это не рефлексия.
Рефлексия это когда описание объекта получается извне.
Например чтобы получить валидный прототип объекта, есть Object.getPrototypeOf которая будет работать всегда, даже если __proto__ переписана.
Поля объекта сами по себе не могут представлять рефлективных свойств, если они по стандарту не защищены от модификации.
Вопрос заключался в теории, а не в том, что я могу. Разумеется, я могу. Могу и вписывать всем объектам кастомное свойство, или навесить nonconfigurable на все поля constructor у всех объектов. Но это будет не по стандарту.
Я ищу именно способ по уму. Допустим есть у нас некий модуль, написанный каким-то васяном, со совей инкапсуляцией. В ходе работы этого модуля что-то возвращает объект, у которого нет поля constructor или оно затерто.
Неужели в js еще не завзели нормального рефлексивного способа получить его?
Точняк, тут же коллекции самообновляющиеся.
Хотя под копотом там O(n) или O(logn), скорее всего.
Это домовские коллекции живые.
Ты можешь сохранять и удалять ссылку на ноду и без ноделистов, вручную.
Точно.
> Как лучше организовать синхронизацию данных при изменении свойств объектов?
Отправлять пакет изменений через вебсокет, на клиент ловить событие и перерендеривать.
Ну с сервака довольно просто обновлять.
Представь, что у сущности есть штук 10 атрибутов и они асинхронно меняются по какому-то клиентскому алгоритму. И каждое изменение переменной должно отображаться на соответствующей ноде.
Как вариант, хранить отдельно старые значения и по таймауту натравливать коллбек, проверяющий изменения. Но это же пердолька.
В идеале надо задать биекцию между свойствами и нодами и больше не париться.
Иди нахуй, тупорылое хуйло. Уж спрашивать про то, как реализовать то, что реакт делает функцией .render() просто тупо.
>Прочитай вопрос ещё раз, даун.
>синхронизацию данных при изменении свойств объектов
С каких пор DOM-дерево это данные, ебанько?
Это не я саггрился.
render() это не то. Нужна двухсторонняя синхронизация. Изменил src пикчи - изменилось свойство src модели. Изменил в модели value - изменилось value ноды.
Короче, надо ставить listener хитрый, на SO норм ответ.
Есть идея выделить все тяжелые данные электрона в отдельный пакет типа DirectX или Java. То есть, при установке Electron приложения будет требоваться этот пакет, если его нет - то скачивается. Каждое приложение не будет тащить с собой 200 мегабайт хлама, этот хлам будет только однажды ставиться на компьютер. Но это пока только концепт.
Использую второй ангулар в разработке реального проекта с командой с начала года, двачую этого. Слишком дохуя недоделанного + сам скомпилированные файлы весят огого пиздец сколько.
Зачем используете тогда?
Это копия, сохраненная 16 мая 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.