Ivan
подскажите за CRA — не могу найти ответ файлы .env.* мержатся или перезаписываются? https://create-react-app.dev/docs/adding-custom-environment-variables/
дикий
Правильно ли я понимаю, что подключать к redux родительский и дочерний компонент нет смысла? Если так сделать, то дочерний обновится два раза? В таком случае мне нужно подключать только родительский и передавать события через свойства? Как лучше делать?
Tor
❤️
Хотя, я вас обманул, мержатся согласно приоритету
Anonymous
Ребят, может кто знает как заставить импортировать вебпак less файл только для определенного роута, т.е. чтобы при уходе с роута чанк удалялся?
Ilya
и тот факт что пустой массив рендериться в “ничто” это вполне логичное поведение. То что иногда нужно другое поведение это не проблема FF. Так как 1) он похволяет это реализовать 2) Засовывать все возможноые юзкейсы для веба к сожалению не представлвяется возможном - так как важен размер получаемых бандлов. Так что никакой проблемы в архитектуре тут нет
Ну т.е. Вы не считаете архитектурой проблемой разное поведение одних и тех же структурных элементов :)? Получается это мало того что очевидно, так ещё и "так держать"? Обычное поле при отсутствии данных у вас получает инициацию при отсутствии значения в состоянии, а те же поля в составе списка - не получают инициации :) и как оно собственно позволяет это реализовать :) заставляет инициировать пустое значение в состоянии - офигенный архитектурный подход :)
Никита
https://yadi.sk/i/WPD0WrdGqfGC3g Всем привет! Подскажите как сделать так чтобы когда я выбираю в одном select, не выбиралось в другом?
Никита
Аа, точно, спасибо ))
TK
добрый день,нужно вывести перед датой слово "активен до". Куда в коде это всунуть, пробывал по разному но не получается
TK
Mikhail
после запятой)
Ilya
всегда можно именть свою надстройку над FieldArray которая отрисует вам компонент если список пустой. Более того, ff это в целом фреймворк агностик либа. И именно form state manager. И учитвая что fiieldArray вообще не поставляется с стандартном пакете react-final-form то можете написать свои компоненты именно для списков.
Чтобы продемонстрировать весь "цирк" ситуации, вот вам эмперический эксперимент: разработали вы такой на FF форму, скажем "покупатель" (фио, почта, телефон) и используете это как есть, и у вас есть форма, в которую пользователь введет или не введет значения, исходя из этого вы строите правила валидации и реакции вашего приложения на ввод и т.д. и т.п. И тут вы такой - так, а вот уу меня есть кейс что «Покупателей» может быть несколько - и вы такой - ну ОК, берем FieldArray и БАЦ… тут выясняется что для того чтобы форма вообще была отображена - состояние не может быть пустым, вы уже обязаны инициализировать минимум одно значение - при чем с «пустыми полями» и пошла «пляска» по рефакторингу всего что с этой формой было связано 🙂 и еще раз повторюсь - «руками» написать и подстроиться можно под что угодно и как-то с этим жить - но это не отменяет концептуальных изначальных архитектурных проблем решения. Да - FiledArray это блин типо плагин 🙂 и типо FF не виноват в том что он корявый… ну так и само решение для форм - которое не предоставляет инструментов для организации списка полей - это тоже архитектурная проблема - вы не находите ?
Mikhail
TK
что?
в какую строчку кода надо воткнуть "активен до" и как это сделать,пробывал && ${"активен до"}, <Date date={tariff.expired_time} />) || ''} но не сработало
Mikhail
в какую строчку кода надо воткнуть "активен до" и как это сделать,пробывал && ${"активен до"}, <Date date={tariff.expired_time} />) || ''} но не сработало
бля я же написал — после запятой у себя в коде вставь а вообще задумайся что ты примерно нихера не понимаешь в собственном коде
TK
бля я же написал — после запятой у себя в коде вставь а вообще задумайся что ты примерно нихера не понимаешь в собственном коде
Выводит то выводит, а как сделать что бы выводила только где именно дта стоит, т к есть где и без даты
Ilya
Чтобы продемонстрировать весь "цирк" ситуации, вот вам эмперический эксперимент: разработали вы такой на FF форму, скажем "покупатель" (фио, почта, телефон) и используете это как есть, и у вас есть форма, в которую пользователь введет или не введет значения, исходя из этого вы строите правила валидации и реакции вашего приложения на ввод и т.д. и т.п. И тут вы такой - так, а вот уу меня есть кейс что «Покупателей» может быть несколько - и вы такой - ну ОК, берем FieldArray и БАЦ… тут выясняется что для того чтобы форма вообще была отображена - состояние не может быть пустым, вы уже обязаны инициализировать минимум одно значение - при чем с «пустыми полями» и пошла «пляска» по рефакторингу всего что с этой формой было связано 🙂 и еще раз повторюсь - «руками» написать и подстроиться можно под что угодно и как-то с этим жить - но это не отменяет концептуальных изначальных архитектурных проблем решения. Да - FiledArray это блин типо плагин 🙂 и типо FF не виноват в том что он корявый… ну так и само решение для форм - которое не предоставляет инструментов для организации списка полей - это тоже архитектурная проблема - вы не находите ?
еще раз - если вам не походит именно FieldArray не берите его Либо берите и допиливайте(оберткой) до того что лично вам нужно. И не нужно будет пляски с рефакторнгом. FF - state manager. Мапинг стейта в UI - уже другая проблема. Кто как хочет тот так и мапит. RFF лишь предоствлаяет примитивы. Не вижу тут никаких архитеркутрых проблем. Кстати вы находили какие-то готовые решения для форм без этих “проблем”?
Volodymyr
Ребята подскажите плиз как правильно реализовать такую штуку. есть массив обьектов const a = [ { "title": "Some text", "forms": [ { "title": "Example1" } ] }, { "title": "Example1", "forms": [ { "title": "Some" }, { "title": "text" } ] }, { "title": "Example2", "forms": [ { "title": "Some text" } ] } ]; Я хочу фильтровать по полю title в каждом элементе, и если у меня есть совпадение возвращать parent и child. Фильтруя я вот по тайтлу parenta но не пойму как если в parent не нашлось идти в child и если есть вернуть child и parent. ` const answer = a.filter(item => { const searchValueToLowerCase = filterValue.toLowerCase(); return a.title.toLowerCase().includes(searchValue); }) ` Подскажите, заранее спасибо.
Volodymyr
то есть что нужно вернуть в результате?
вернуть целиком парента с чаилдом. Я фильтрую только по паренту выходит.
TK
Оберни в фрагмент дату и префикс для нее.
я вот как сделал, теперь работает
Volodymyr
то есть что нужно вернуть в результате?
в случае если пользователь ввел в поиск "Some" вернуть это const a = [ { "title": "Some text", "forms": [ { "title": "Example1" } ] }, { "title": "Example1", "forms": [ { "title": "Some" }, ] }, { "title": "Example2", "forms": [ { "title": "Some text" } ] } ]; Вернуть где есть совпадения. и элементы которые совпали.
voix
я вот как сделал, теперь работает
Лучше <> <span>Активен до: </span> <Date ... /> </>
Ilya
еще раз - если вам не походит именно FieldArray не берите его Либо берите и допиливайте(оберткой) до того что лично вам нужно. И не нужно будет пляски с рефакторнгом. FF - state manager. Мапинг стейта в UI - уже другая проблема. Кто как хочет тот так и мапит. RFF лишь предоствлаяет примитивы. Не вижу тут никаких архитеркутрых проблем. Кстати вы находили какие-то готовые решения для форм без этих “проблем”?
э-м-м а можно про state managment в FF где он собственно «менеджерит» какое-то ваше состояние 🙂 он как раз призван «скрыть» от вас это состояние и основное его предназначение - как раз предоставление Вам компонентов для обеспечения рефлексии/реактивности/связанности/биндинга (нужное подчеркнуть) REDUX это state-manager 🙂 а Final Form это form-abstraction-api, и то что он себя так «кликает» (High performance subscription-based form state management) устами его автора - полная хрень, и sate-maneger это решение разве что только для себя самого 🙂 Найдите упоминие state magment у того же Formik что есть полностью аналогичное решение
UT
Hey, good to be here! Hello hello!
UT
Any English speaking folks here? 👋
Ilya
Any English speaking folks here? 👋
I think that the some part of this community may talk with you, but not the most of us
Olejqua
всем привет. подскажите пожалуйста, что не так делаю. на div повешал обработчик onKeyDown={this._onKeyDown} и в функции прописал _onKeyDown = e => {console.log(e)} но ничего не выводится. нагуглил, что tabIndex нужно добавить, но не помогает.
Ilya
ну так у final form написано form state manager. Какая разаница то?
уважаемый теска 🙂 предлагаю закончить наш светский раут - как вы на это смотрите ?
Roman
Привет. Если у меня от значения в props зависит css класс для элемента и я использую функциональные компоненты, то нужно переменную с классом объявлять через useState и менять через useEffect или просто в теле компонента переменную объявить?
Roman
clsx, classnames
Это что?
wolfe
Это что?
npm-пакеты
Roman
Если что-то в компоненте зависит от пропсов, то нет никакой нужды копировать это в стейт.
Иначе придется писать className={ x ? y : z }, а там может быть не один класс
Roman
npm-пакеты
npm пакет для расставления классов, серьезно? Я просто к тому, что как-то странно
wolfe
npm пакет для расставления классов, серьезно? Я просто к тому, что как-то странно
сначала посмотрите, пожалуйста. там всё довольно просто делается
voix
Иначе придется писать className={ x ? y : z }, а там может быть не один класс
То, что написано в теле функции, будет вызываться при каждом рендере. Какой ты видишь смысл заносить пропс в стейт?
Roman
В этом случае, только такой, что облегчить шаблон
Roman
сначала посмотрите, пожалуйста. там всё довольно просто делается
Ну да, выглядит хорошо. Но мне на всей spa 2-3 раза такое нужно сделать, поэтому подтягивать что-то для этого кажется избыточным
🦜
npm пакет для расставления классов, серьезно? Я просто к тому, что как-то странно
ну не расставляй классы, делай через data-attr и селектор на них. Решений полно вокруг
voix
В этом случае, только такой, что облегчить шаблон
То есть ты хочешь хранить в стейте не сам пропс, а значение, которое будешь высчитывать каждый раз, как пропс меняется?
Александр
Всем привет.. Ребят такой вопрос .. Кто-то работал с mdbreact
NoName
Привет. Знающие подскажите. Есть ли какие то подводные камни при использовании mobx? Хочу избавиться от редакса, ибо слишком много телодвижений нужно сделать что бы отобразить данные. Времени уходит больше чем на написание бэк части для этих данных. Ищу альтернативу. Наткнулся на mobx. Или посоветуйте что вы используете
Vladimir
Привет. Знающие подскажите. Есть ли какие то подводные камни при использовании mobx? Хочу избавиться от редакса, ибо слишком много телодвижений нужно сделать что бы отобразить данные. Времени уходит больше чем на написание бэк части для этих данных. Ищу альтернативу. Наткнулся на mobx. Или посоветуйте что вы используете
1. будешь вынеужден использовать только компоненты-классы 2. сложно дебажить проблемы типа "а откуда изменилось это значение" 3. сложно отлавливаемые баги, если забудешь @observable, @observer и т.п. 4. сложно декомпозщировать экшены из сторов, поэтому будет похожая копипаста в разных сторах
voix
Если есть такое вычесляемое свойство, значит нужно использовать useEffect?
Да. Если напишешь в теле, то при каждом рендере будет вычислять.
Evgeniy
Ребят, подскажите пожалуйста, что тут не так?
Вадим
нельзя возвращать if
Roman
Да. Если напишешь в теле, то при каждом рендере будет вычислять.
Даже для такой незначительной вещи, как пересчет одной переменной стоит писать это все?
Mihail
Спасибо
и return внутри функции не забудь
Александр
Ребят такой вопрос .. Юзаю библиотеку .. Но почему-то не отображается урл в ссылке .. Не могу понять почему? MDBDropdownItem - вот сам тег
Ivan
Ребят такой вопрос .. Юзаю библиотеку .. Но почему-то не отображается урл в ссылке .. Не могу понять почему? MDBDropdownItem - вот сам тег
Вообще ничего не понятно. Собери пример на codesanbox.io. Иначе тебе просто никто не ответит.
Александр
Понял. Спасибо
NoName
@v_today @gorbunov_i а какие есть альтернативы?