Комментарии 20
На первый взгляд, все просто. Но вот в чем загвоздка: а как вы узнаете, отобразился ли div?
$('.toggled').is(':visible')
С необходимостью хранить состояние отдельно я согласен — но пример выбран крайне неудачно.
Вместо прозрачного и понятного HTML + JS (каждый на 2-5 строк) — приличный кусок кода, который приходится анализировать и вдумываться — а что оно делает… даже не смотря на некоторое знакомство с React
https://github.com/jquery/jquery/blob/2d4f53416e5f74fa98e0c1d66b6f3c285a12f0ce/src/css/showHide.js#L89
Код $#toggle() занимает примерно столько же, сколько и компонент.
К тому же, в реальности логика не каждого компонента будет "решаться" существующими библиотеками.
Не понимаю, за что минус.
Почему вы решили посчитать сколько места занимает реализация toggle — но не считаете сколько места занимает реализация React?
К тому же, в реальности логика не каждого компонента будет "решаться" существующими библиотеками.
Ну так и надо было брать задачу, которая не решается существующими библиотеками. Почему такую задачу должен искать читатель?
Ну так и надо было брать задачу, которая не решается существующими библиотеками. Почему такую задачу должен искать читатель?
согласен
Почему вы решили посчитать сколько места занимает реализация toggle — но не считаете сколько места занимает реализация React?
Представим, что готовой реализации нет.
Тогда Вы напишете что-то вроде
const el = document.querySelector("#toggler");
el.onclick = function(){
if (el.style.display == "none") {
el.style.display = "block";
} else {
el.style.display = "none";
}
Несильная разница в кол-ве кода, которая компенсируется более простым внедрением возможностей.
Кстати, весь код jQuery я тоже не считаю
Представим, что готовой реализации нет.
Эдак можно представить что в языке нет XMLHTTPRequest и предложить свою реализацию на основе COM-объекта — но смысла в подобной аргументации будет мало :)
У нас уже есть jquery, и в нем есть toggle. Если автор уговаривает перейти с jquery на react — он должен привести аргументы, выходящие за рамки "представьте что у вас нет jquery".
Десять лет назад в веб-разработке была своя священная корова – разделение HTML, JS и CSS
React ставит под сомнение такой подход
Очередной виток спирали, улыбаемся и машем, в ряде задач вполне себе прикольно.
Я думаю >90%, если даже не 95% русскоязычного web-сообщества не владеют английским на уровне "хотя бы intermediate". Это довольно серьёзный уровень, кстати говоря. У большинства или beginner или pre-intermediate. Второго, кстати говоря, уже хватает на чтение документации со словарём. Но времени и напряжения уходит куда больше, чем при чтении переводов. Но опять же, обычно переводов попросту нет, либо же их качество оставляет желать лучшего. Так, что изучение английского до уровня upper-intermediate или advanced в любом случае очень стоящая затея. Что, впрочем, нисколько не отменяет оторванности вашей реплики от реальности.
Я знаю английский со школы. Активно учил по школьной программе, параллельно читал журналы и книги. Могу сказать, что владею английским свободно. Могу общаться устно и письменно, читать серьезные книги на любые темы.
При всем при этом, читать на русском мне все равно приятнее и легче. Единственная причина, по которой я стараюсь смотреть кино в оригинале и читать книги в оригинале: отвратительное качество переводов, которое с каждым годом становится все хуже. Нет сейчас грамотных переводчиков. В кино, такое ощущение, их нет вообще. В издательствах их исчезающе мало.
Мне кажется, что сейчас не переводчиков грамотных стало мало, а задачи им подобные никто не ставит. Зачем платить большие деньги хорошему специалисту, если можно заплатить малые, новичку или разгильдяю? Попробовали раз, попробовали два. Народ разницы особенно то и не учуял. По финансам оказалось выгоднее. Это я, в первую очередь, про книги и фильмы.
Сам уже 2 разы натыкался на такую проблему, что брал книжку всего-лишь годичной давности, читал, делал по ней примеры. Потом садился за последнюю версию либы, о которой читал книжку, а там уже все по другому. И это, кстати, было с книжкой по Реакту и книжкой по Эмберу. В итоге сделал для себя выводы, что та-же документация (и по реакту и по эмберу) покрывает все на 100%. Тем более, когда книжка в топику вышла в середине лета, а за ее перевод взялись только сейчас.
Но затея, конечно же, хорошая. Русскоязычное сообщество и так отстает от последних тенденций. Но лично я бы рекомендовал переводить более «глобальные» книги по топику, тот-же последний JavaScript в книжках Кайла Симсона или Николаса Закаса.
coffeescript зачем здесь?
React.createClass
уже сто лет как никто не пишет. Если хотие чтобы не просто переести книгу ну и продать ее, переведите все примеры на ES6/7.
О бравом React'е замолвите слово