LINUX.ORG.RU

Сейчас в моде иная нежели у jq концепция, ты оперируешь состоянием приложения, все манипуляции с DOM делает за тебя либа. Как по мне - так удобнее.

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

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

не путай теплое с мягким, как оперировали состоянием, так и оперируют, поменялись лишь инструменты, да и те, правильно ты сказал, лишь в моде.

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

а если всего пара десятков мест интерактива, то можно и жквери.

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

надо выбирать инструмент под задачу, а не скулить про какую-то моду.

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

Тебя прямо зацепило?

как оперировали состоянием, так и оперируют

Да, только сейчас

все манипуляции с DOM делает за тебя либа

____

если нужно много состояний с сложным взаимодействием

Именно, для приложений. Для сайтов лучше всего статический html подходит, как по мне.

не скулить про какую-то моду

Мне пофиг на моду, я выбрал для себя svelte, потому что удобно и он далеко не модный.

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

Тебя прямо зацепило?

Не люблю смузи-адептов. Ты не из них? Тогда извиняюсь.

Да, только сейчас (все манипуляции с DOM делает за тебя либа)

Ага:

function setSomeState($el, state)
{
    $el.toggleClass('el-some-state', !!state);
}
А можно (пример прост, а на деле обычно сложнее) и наплагинить через fn.

Именно, для приложений

Приговнений )) Или всё же приложений, например, уровня игр, чтоб прям стандалон во все поля. А всё остальное это приговнения к бекендам.

Для сайтов лучше всего статический html подходит, как по мне

Вот не надо крайностей. Точечно приговнить статический хтмл скриптами вполне полезно, но без фанатизма.

Мне пофиг на моду

И это хорошо.

По старой привычке можно и таблицами верстать

А то! И я этот пункт в конце поставил как маловажный, зачем ты именно к нему прицепился?

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

Ага

<header hidden={!$appState.some1}>
  <h1 class:cool={$appState.some2}>
    {$appState.title || 'Default Title'}
  </h1>
</header>

<button on:click={() => toggle('some1')}>
  header
</button>
<button on:click={() => toggle('some2')}>
  h1
</button>

<script>
  import { appState } from './myCoolStore.js'

  const toggle = (prop) => appState.update(state => {
    state[prop] = !state[prop]
    return state
  })
</script>

<style>
  h1.cool { color: red }
</style>

Никаких ручных манипуляций нет и не предвидится, но это пример, можно ещё проще.

Но вообще спорить не буду, потому как мы видимо не совсем об одном и том же речь ведём.

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

Для сайтов лучше всего статический html подходит, как по мне.

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

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

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

Зачем писать жиквери на жс

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

Согласен, бывает нужен интерактив, но чаще html + css достаточно, как мне кажется.

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

если уже есть готовое?

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

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

много лишнего

Так оно в клиентский код и не попадёт же. Впрочем иногда контроля действительно не хватает.

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

А как стоит?

<h1 class=«{state}»>Hello</h1>

() => state = !!state;

Ты просто меняешь значение переменной, а во всех местах html значения автоматически подставляется.

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

Вот да, пока не пересоберешь — не проверить.

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

непосредственный контроль на странице без посредников трансляторов, что для цсс что для жс

Ага. Особенно круто наверное глазками контролировать, уникальность имен CSS-классов, отслеживать все ли классы на своих местах между CSS и HTML. Отслеживать правильность селекторов в ванильном JS. F5 наш друг

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

глазками контролировать, уникальность имен CSS-классов

ты там код пишешь или жопой по клаве елозишь?

все ли классы на своих местах между CSS и HTML

определяй класс если он нужен, не определяй если не нужен.

правильность селекторов в ванильном JS

что, правда елозишь?

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

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

ты там код пишешь или жопой по клаве елозишь?

Уникальность классов так и обеспевивается. CSS-лоадер или либа под капотом «елозит жепой» (создает рандомные имена). Но разраб этого не видит — он пишет простые имена. Альтернативы этому — shadow CSS (еще не дожиди до него) и БЭМ. Вот БЭМ это тот случай, когда елозит сам разраб своей непосредственной жеппой

определяй класс если он нужен, не определяй если не нужен

Когда пишешь на ваниле, имя этого класса у тебя встречается в трех файлах — css, html и селекторах в JS. Изменение в одном месте влечет потерю связности в остальных. Если же использовать CSS-либу и реакт, то имя класса у тебя это JS-переменная. А верстка — это JS-функции. Изменишь такое имя в одном месте и IDE сразу скажет, что такой переменной не существует (ил что она не используется). Плюс становится возможен рефакторинг этого имени: Go to definition, Global Rename и проч.

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

Пишешь бред. Елозишь наверное

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

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

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

Написал же ниже, я использую svelte - dsl, на глаз мало отличается от html+js, компилируется в js. Много рутины берёт на себя, работает быстро, рантайма нет, навязывает разве что иммутабельность, я доволен.

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