dzimen
#programowanie #javascript #jquery

Cześć, próbował ktoś bawić się inkrementacją? Ogólnie mam funkcję która numeruje mi listę. Za każdym razem co kliknę przycisk "Dodaj" to ma stworzony kolejny item z count++, kiedy ktoś usunie element to robię count--

Problem jest taki że jeśli mam taką sytuację:

Lista:
1. Test
2. Testowy
3. Tescik

Po usunięciu elementu drugiego mam tak:
1. Test
3. Tescik

Da się to jakoś dynamicznie przenumerować, żeby było tak:

1. Test
2. Tescik

Z góry dziękuję za pomoc!
  • Najlepsze
  • Wszystkie komentarze
Rst00
Rst00
2
@dzimen: tak, ale źle się do tego zabierasz. Powinieneś mieć funkcję renderującą listę, która na podstawie jakiegoś arraya wypisuje Ci tę listę. Po usunięciu powinieneś jeszcze raz wywoływać tę funkcję. Czyli tak:

const items = [];

przy dodawaniu: items.push('asd')
przy wyrzucaniu: items.slice z indexem + wywołanie funkcji która na podstawie items renderuje
6a6b6c
@dzimen: po co numerujesz? Nie wystarczy pozycja na liscie?
dzimen
dzimen Autor
0
@6a6b6c: @Rst00: Bo potrzebuję żeby było to widoczne. Numerację mam po "A", "B" itd. Ogólnie jest wiersz z trzema przyciskami i ten wiersz dodaje dynamicznie po kliknięciu przycisku
Rst00
Rst00
0
@dzimen: no to przerób to na ol + li i daj type="A" to będziesz mieć automatyczną numerację
6a6b6c
@dzimen: mozesz przenumerowac cala liste loopem jakims, ale po co? Jak mala lista, to luz, ale jak bedzie sto tysiecy elementow, to bez sensu.
niepodszywamsiepodbiauka
@dzimen: Ty robisz coś praktycznego czy teoretycznego?
[1, undefined, 3].filter(e => e!=undefined) // [1, 3]
A jeżeli indeksować specyficznie, a nie po pozycji, to czemu nie ubrać tego w obiekt?
[{index: 44, value: 'xd'}]