Size: a a a

JavaScript — русскоговорящее сообщество

2021 October 16

RD

Roman Dolmatov in JavaScript — русскоговорящее сообщество
Всем Привет, как мне изменить этот класс чтоб в итоге кнопки работали как "Табы"?   $('.filter-button.btn-outline-secondary').click(function () {
           $(this).toggleClass('active');
           const $activeFilterButtons = $('.filter-button.btn-outline-secondary.active');
   
           let activeFilters
           if ($activeFilterButtons.length > 0) {
               activeFilters = $activeFilterButtons
                   .map((i, element) => {
                       const $element = $(element);
                       return {
                           pagenumber: $element.data('pageNumber'),
                           property: $element.data('property'),
                           filter: $element.data('filter'),
                           value: $element.data('value')
                       };
                   })
                   .toArray();

             
           } else {
             

               activeFilters = [];
           }

           const url = new URL(window.location.href);
           const search_params = url.searchParams;
           search_params.set('filters', JSON.stringify(activeFilters));

     
           url.search = search_params.toString();

         
           const new_url = url.toString();
           window.location.href = new_url;
       });
источник
2021 October 17

В

Вячеслав in JavaScript — русскоговорящее сообщество
Доброй ночи, помогите пожалуйста решить проблему,
Есть лист обьектов и лист фильтров, необходимо проверять если в обьекте есть все из перечисленных фильтров оставить обьект , если нет удалить обьект из листа. Проверять нужно как ключи так и значения, и в обьекте может быть вложенный обьект либо лист
источник

A

Alexander in JavaScript — русскоговорящее сообщество
утра
источник

A

Alexander in JavaScript — русскоговорящее сообщество
слишком абстрактно.
источник

A

Alexander in JavaScript — русскоговорящее сообщество
итерируем фильтры до первого отсутствующего в объекте
источник

В

Вячеслав in JavaScript — русскоговорящее сообщество
скорее вся проблема во вложенных обьектах
источник

A

Alexander in JavaScript — русскоговорящее сообщество
начинай от листьев
источник

В

Вячеслав in JavaScript — русскоговорящее сообщество
как вариант я рассматривал сделать entries
источник

В

Вячеслав in JavaScript — русскоговорящее сообщество
Далее обьединить пары в единый лист и составить лист листов, вместо листа обьектов, и уже в листе более просто выискивать фильтры, но на сколько вменяемое это решение)
источник

L

Longking in JavaScript — русскоговорящее сообщество
Привет всем, ребята у меня вопрос , я только начинаю изучать JS DOM и jQ, с их помощью можно сделать слайдер на всю страницу (100vh)? И ещё как сделать слайдер который пока до конца не докрутишь вертикальный скрол не будет работать
источник

E

Evgen in JavaScript — русскоговорящее сообщество
Попробуй задачу описать по другому, исходя из требований заказчика. Иначе, просто сделай рекурсивный вызов метода фильтрации в котором и фильтруй по твоим условиям.
источник

ZP

Zhenya Panin in JavaScript — русскоговорящее сообщество
Всем привет.
А самый актуальный слайдер на сегодняшний день - это https://swiperjs.com/ ?
Вроде погуглил его многие хвалят
источник

海千

海 千户 in JavaScript — русскоговорящее сообщество
painfully convenient
источник

EK

Evgeny Kiryanov in JavaScript — русскоговорящее сообщество
Привет всем, возможно вопрос более общий, чам Angular по TS и JS вообще, но тем не менее…
Есть данные, приходящие от бэкэнда, типа

{controller: 'l1', //(or l2, l3, l4)
status: '#M,IN,011111'} //(or other ones I check in if statements)


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

{l1: {in1: 1, in2: 0, ...}, l2: {in1:0, ...}, l3: {in1:1, ...}, l3: {...}, l4: {...}}

Вот фрагмент компонента:

{
   this.wsSubscription =
     this.controlService.createObservableSocket(this.awsUrl)
       .subscribe(
         data => {
           if(data.cotroller == 'l1') {
           if(data.status.startsWith('#RD')){
             this.status.l1.in1 = data.status[4];
             this.status.l1.in2 = data.status[5];
             this.status.l1.in3 = data.status[6];
             this.status.l1.in4 = data.status[7];
             this.status.l1.in5 = data.status[8];
             this.status.l1.in6 = data.status[9];
             console.log('Состояние RD L1 обновлено');}

           if (data.status.startsWith('#M,EIN')) {
             switch (data[7]) {
               case 1 : {this.status.l1.in1 = data.status[9]; break}
               case 2 : {this.status.l1.in2 = data.status[9]; break}
               case 3 : {this.status.l1.in3 = data.status[9]; break}
               case 4 : {this.status.l1.in4 = data.status[9]; break}
               case 5 : {this.status.l1.in5 = data.status[9]; break}
               case 6 : {this.status.l1.in6 = data.status[9]; break}
               }
             console.log('Состояние M EIN L1 обновлено');
             }

           if(data.status.startsWith('#M,IN')){
             this.status.l1.in1 = data.status[6];
             this.status.l1.in2 = data.status[7];
             this.status.l1.in3 = data.status[8];
             this.status.l1.in4 = data.status[9];
             this.status.l1.in5 = data.status[10];
             this.status.l1.in6 = data.status[11];
             console.log('Сотсояние M IN L1 обновлено');}
         }
           },
         err => console.log( 'err: ' + err),
         () =>  console.log( 'The observable createObservableSocket is complete')
       );


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

かなで in JavaScript — русскоговорящее сообщество
горизонтальный? *
источник

D

Denis in JavaScript — русскоговорящее сообщество
В сторону циклов подумать.
источник

L

Longking in JavaScript — русскоговорящее сообщество
Думаю уже нашел ответ
источник

L

Longking in JavaScript — русскоговорящее сообщество
Я сейчас делаю макет, и думаю сделать слайдер на swiper.js
источник

L

Longking in JavaScript — русскоговорящее сообщество
Но у меня нету чёткого плана как его сделать😂
источник

L

Longking in JavaScript — русскоговорящее сообщество
Так как я только начал изучать JS DOM
источник