LINUX.ORG.RU

Почему в react всегда используют getElementById?

 , ,


0

1

Почему всегда используют getElementById на реакте? Почему бы не использовать querySelector?

В чем прикол ссылаться по id?

ReactDOM.render(<App />, document.getElementById("app"))

А нельзя ли так сделать?

ReactDOM.render(<App />, document.querySelector("app"))
<!-- index.html -->
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>App</title>
</head>
<body>
  <div class="app"></div>
</body>
</html>
Deleted

Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от anonymous

Точка с запятой, насколько знаю, это феномен чисто яваскрипта.

Точку с запятой в JS в конце строки ставят только нубы, сионисты и пасквилянты.

rebforce
()
Ответ на: комментарий от rebforce

Не плохо ты так затраллил лалок. Ставить точку с запятой в конце на автомате — хорошая практика. А то в CSS забудешь это сделать и получить неожиданный результат.

CryNet ★★★★★
()
Ответ на: комментарий от CryNet

Че-то мне подсказывает, что он сторонник (где это возможно) имплицитной конкатенации.

anonymous
()
Ответ на: комментарий от CryNet

Глядя на логотип Арча, хотя по идее там арка, не могу перестать видеть в нем перо от перьевой ручки.

Перьевая ручка → Школота.

Ничего личного. Я просто про их лого.

anonymous
()
Ответ на: комментарий от anonymous

И как это связано с темой обсуждения?

CryNet ★★★★★
()
Ответ на: комментарий от anonymous

Какое ещё перо? Всем известно, что на логотипе арча - эрегированный сосок в ночи.

anonymous
()
Ответ на: комментарий от rebforce

Точку с запятой в JS в конце строки не ставят только, те, кто вообще не вдупляет, как работает парсер JS

annulen ★★★★★
()
Ответ на: комментарий от annulen

Всё с точностью до наоборот. Именно те, кто вдупляет, как работает парсер JS и какой приоритет у разделителей выражений, знают, что точка с запятой в конце строки обязательна в единичных случаях (например, если следующее выражение начинается со скобки). А все эти дауноориентированные конвенции с обязательной ; в конце, превращающие JS из нормального ЯП в очередное подобие си или жабы, как раз призваны упростить жизнь всяким макакам, которые JS не владеют, но писать на нём хотят.

rebforce
()
Ответ на: комментарий от CryNet

При чём здесь вообще CSS? Хотя даже в случае с CSS надо мыслить не строками, а выражениями. Последнее выражение перед закрытием стилевого блока, кстати, тоже не требует точки с запятой.

rebforce
()
Ответ на: комментарий от dimuska139

Там это написано ровно по той же причине: облегчить жизнь макакам, не умеющим думать выражениями.

И да, единственным авторитетным источником в данном контексте является стандарт ECMAScript. И если бы по нему перед входом в индустрию существовал обязательный мировой экзамен, во многих подобных макакогайдлайнах просто отпала бы необходимость. А к «авторитетам» в виде людей или корпораций апеллирует только стадо, не имеющее своей головы на плечах.

rebforce
()
Ответ на: комментарий от rebforce

Учитывая что сейчас все обмазано бабелями и scss-ами в целом пофигу как писать, один хрен будет транслироваться. Так что пишут так как удобнее в рамках конкретной команды. Это просто не влияет ни на что кроме восприятия кода глазами.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

babel кстати проставляет точки с запятой при трансляции.

TDrive ★★★★★
()
Ответ на: комментарий от dimuska139

там описаны очень тупые ошибки, прям вся логика меняется, чтобы такое пропустить нужно планомерно класть болт на тестирование.

TDrive ★★★★★
()
Ответ на: комментарий от rebforce

При чём здесь вообще CSS?

Ставить точку с запятой в конце на автомате — хорошая практика

Потому, что, например

в CSS забудешь это сделать и получить неожиданный результат

CryNet ★★★★★
()
Последнее исправление: CryNet (всего исправлений: 1)
Ответ на: комментарий от TDrive

Учитывая что сейчас все обмазано бабелями и scss-ами

И это печально. Хорошо, когда надо поддерживать только актуальные версии адекватных браузеров (в моём случае речь вообще о NodeJS идёт). Остальным соболезную.

кроме восприятия кода глазами

Ну, у любителей обмазаться сятинкой от точек с запятой в глазах, видимо, не рябит.

rebforce
()
Ответ на: комментарий от CryNet

Ещё раз: при чём здесь CSS? Если кто-либо полез в индустрию и при этом не может отличить одно от другого и на автомате применяет к CSS то, что применимо только к JS, ему срочно надо посетить проктологоанатома и эвтаназиолога.

rebforce
()
Последнее исправление: rebforce (всего исправлений: 2)
Ответ на: комментарий от rebforce

Ещё раз: при чём здесь CSS? Если кто-либо полез в индустрию и при этом не может отличить...

Под конец рабочего для и не такое происходит. Или ты хочешь сказать, что всегда бодрствуешь?

Точка с запятой применима к обеим

CryNet ★★★★★
()
Ответ на: комментарий от CryNet

Под конец рабочего для и не такое происходит. Или ты хочешь сказать, что всегда бодрствуешь?

У всех бывают ошибки. Но из-за каких-то редких экстремальных случаев жать дополнительную кнопку в конце каждой строчки, загрязнять код — не самое лучшее решение.

Есть полно языков без этих рудаментарных особенностей 70х годов, когда особо беспокоились о сложности парсеров языков. И код таких языков выглядит намного чище. Из модного-современного - Golang.

Хотя, в том же Расте оставили обязательными точки с запятыми (правда, там на них лежит больше логики и иногда их нужно не ставить). И из-за этого, его и так не сильно чистый синтаксис, стал еще визуально тяжелее.

anonymous
()
Ответ на: комментарий от anonymous

Есть полно языков без этих рудаментарных особенностей 70х годов

Видимо это из-за этого в голове намертво въелось: ставь точку с запятой в конце или умри

CryNet ★★★★★
()
Ответ на: комментарий от rebforce

пиши вообще в одну строку весь свой код, не ставь скобки у ифа и прочих, именуй переменные одной буквой, по возможности всегда одной. так ты покажешь всем макакам насколько ты крут и у тебя задница не красная.

deep-purple ★★★★★
()
Ответ на: комментарий от deep-purple

Все всегда имеет свою цену.

Скобки в ифах/циклах необязательны, но их лучше ставить. Потому, что они используются не на каждой строке и очень гемморойно отслеживать их необходимость при мержах/рефакторингах. (Можно вспомнить эпичный эпловский баг с непроверкой ssl серификатов из-за «случайной» ошибки со скобками после ифа).

При этом, например, в андроидовских гадлайнах разрешается использование ифов без скобок, но только в случае, если тело будет записано в одну строку на той же строке, что и иф. В основном, используется для логирования:

if (needLog) writeLog("....");

Так ошибки мержей не так опасны.

Точки с запятой же на концах строк используются в каждой строке и ситуаций в коде, где их отсутвие может помешать, относительно легко избегать вообще не используя некоторых конструкций.

anonymous
()
Ответ на: комментарий от deep-purple

Тот случай, когда аватарка полностью соответствует содержанию постов.

не ставь скобки у ифа и прочих

Они и не нужны, если в теле «ифа и прочих» находится всего одно выражение. Кстати, их наличие в этом случае — ещё один признак изнасилованных страусиным трупом.

пиши вообще в одну строку весь свой код

именуй переменные одной буквой, по возможности всегда одной

Ты не поверишь, но есть применение и такому стилю. И более того, буквы для переменных подбираются так, чтобы в параметрах функций составляли осмысленные слова. Но здесь, разумеется, речь идёт уже об искусстве, а не о говноляпстве на ставку, когда твой код должны читать другие такие же говноляпы.

так ты покажешь всем макакам насколько ты крут и у тебя задница не красная.

Конкретно в этом треде задницы раскалились исключительно у защитников синтаксических преведов из семидесятых, что как бы намекает, кто здесь воистину макаки.

rebforce
()
Ответ на: комментарий от rebforce

Там это написано ровно по той же причине: облегчить жизнь макакам, не умеющим думать выражениями.

Вот это у тебя чсв ) А ты точно не макака, а гениальный программист?

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

Вот это у тебя чсв

У меня ЧСД, не путай с метапрогом.

А ты точно не макака, а гениальный программист?

А кто тебе сказал, что я вообще программист? Да, почему-то меня часто с ними путают. Но уж давно как не (типичный) девелОпер, ага. И из JS (ES6) на практике уж давно как сталкиваюсь только с нодой (по работе), SpiderMonkey (привет Фабрису) и последнее время ещё QuickJS (привет другому Фабрису). Но это, знаешь ли, не повод здешнюю вопиющую ересь спускать на тормозах.

И вообще, на фоне всего происходящего вокруг само слово «программист» уже приобретает немного оскорбительный оттенок. Так же, как в разное время меняли оттенки слова «гик», «панк» и «хакер». Видел я в среду вечером это сборище типа как интеллектуалов среди типа как программистов из разных компаний города. Смотришь на них и думаешь: и это наша техноэлита? И эти безынициативные заплывшие рожи, пропитанные гедонизирующим пафосным похренизмом, будут нас в случае чего вытаскивать из грядущей антиутопии? Да они первые лапками кверху на сторону Большого Брата перебегут.

Сложно хакерам среди «программистов», да. Но за добрые дела не платят, только за полезные для индустрии. Так что приходится шифроваться среди этих макак и терпеть их выкидоны в том числе на предмет точек с запятой, которые и наблюдаются в том числе в этом треде. В общем, давай не это самое, тем более, что ты вроде производишь впечатление адекватного человека. Просто имей в виду, что не все работники сферы IT хотят себя с этой толпой великовозрастных детей ассоциировать.

P.S. Если знаешь Мишу Б., передавай привет. Надеюсь, у него в жизни всё сложилось хорошо. Интересно просто смотреть, как у людей со временем мутирует их энтузиазм (чаще всего в сторону угасания)… Поэтому, кстати, и за метапрогом наблюдать интересно.

rebforce
()
Ответ на: комментарий от rebforce

Как написать прогу, которая будучи запущенной на целевой архитектуре написала бы под эту архитектуру эмулятор?

TooPar
()
Ответ на: комментарий от rebforce

Чувак, всё это круто, но меня, вот, например, немного удивляют такие несостыковки:

а) вот ты намекаешь что ты хакер

(Ты и раньше на всякое такое намекал.)

б) во всяких тредах ты говорил что не хочешь палить публичность

При этом при желании ты ищешься в интернете за 2 минуты. И там же пруф, за 2 минуты, что ты и Варфоломей Котечка - это один человек.

anonymous
()
Ответ на: комментарий от anonymous

Люблю жанр альтернативной истории. Так-то да, я — и котечка, и метапрог, и вообще половина регистрантов лора.

rebforce
()
Ответ на: комментарий от TooPar

Эмулятор чего? На чём этот эмулятор должен в итоге запускаться?

Короче, создавай отдельный тред и чётче формулируй вопросы. А то пока что смахивает на вброс.

rebforce
()
Ответ на: комментарий от rebforce

У тебя есть писюк. Тебе дают НЁХ и компилятор ccНЁХ, запускающийся на писюке и делающий бинарники НЁХ. Задача - написать эмулятор НЁХ запускающийся на писюке. Доков по архитектуре НЁХ конечно нету.

TooPar
()
Последнее исправление: TooPar (всего исправлений: 1)
Ответ на: комментарий от tz4678

Этож стиль их кодирования. У них в исходниках вебкита везде:

У гугловцев сотни проектов и у каждого свой кодстайл.

Я имел ввиду не вебкит, а именно джавовскую андроидную часть

https://source.android.com/setup/contribute/code-style#use-standard-brace-style

anonymous
()
Ответ на: комментарий от annulen

Точку с запятой в JS в конце строки не ставят только, те, кто вообще не вдупляет, как работает парсер JS

Ну расскажи.

naked_joe
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.