$(this).index() на $('.sub3').index(this) (за подробностями - в документацию)
<tr *ngFor="let monitoring of filteredMonitorings "> <td style="text-align: center">{{ getTotal(filteredMonitorings) }} </td> </tr>
<tr *ngFor="let monitoring of filteredMonitorings ">
<td style="text-align: center">{{ monitoring.count }} </td>
</tr><tr>
<td style="text-align: center">{{ getTotal(filteredMonitorings) }} </td>
</tr>
languages: [ 'en', 'ru' ]<ul>
<li
v-for="lang in languages"
@click="selected = lang"
>
{{ lang }}
</li>
</ul>
store.dispatch('заргузитьДанныеПользователя').then(() => {
new Vue({ ... });
});created() {
this.$store.dispatch('заргузитьДанныеПользователя');
},<div v-if="$store.state.данныеПользователя">
контент
</div>
<индикатор-загрузки v-else />
Можно ли сохранять состояние одного компонента с разными входными данными
.div_info у вас нет - так что его высота равна нулю. А поскольку сам .div_info является единственным дочерним элементом .midd_wrap - то и последний также имеет нулевую высоту. Т.е., бэкграунд на самом деле есть, просто вы его не видите.
if( slideIndex > sliderItem.length ) {sliderItem.length корректным значением, элемента с таким индексом уже нет. Замените > на ===.
Нормальное ли разделение компонентов
правильно ли делать такие передачи props??
<li v-for="(val, key) in data" :some-data="key">{{ val }}</li>
Обновить не вариант, в проекте этот юзается(
Слишком много надо будет переписывать
в консоль выводится два значения, причём непонятно каким образом сформированные
Я вижу правильное выполнение так: <бла-бла-бла>
When all observables complete, emit the last emitted value from each.
const result = arr.map(n => n.charAt());
// или
const result = [];
for (const [ n = '' ] of arr) {
result.push(n);
}
// или
const result = Array(arr.length);
for (let i = 0; i < arr.length; i++) {
result[i] = arr[i][0] || '';
}
// или
const result = [];
for (let i, n; (n = arr[i = result.length]) != null;) {
result.splice(i, 0, n.replace(/(.).+/, '$1'));
}
// или
const result = (function get(i, n = arr[i]) {
return n != null ? [ n.slice(0, 1), ...get(-~i) ] : [];
})(0);
#exampleModal {
.form-group {
display: none;
&.active {
display: block;
}
}
}$('#exampleModal').on({
'show.bs.modal'(e) {
const recipient = e.relatedTarget.dataset.whatever;
$('.modal-title, button[type="submit"]', this).text(`Add ${recipient} in system`);
$(`.${recipient}`, this).addClass('active');
},
'hide.bs.modal'() {
$('.form-group.active', this).removeClass('active');
},
});$('#exampleModal').on('show.bs.modal', function(e) {
const recipient = e.relatedTarget.dataset.whatever;
$('.modal-title, button[type="submit"]', this).text(`Add ${recipient} in system`);
$('.form-group', this).removeClass('active').filter(`.${recipient}`).addClass('active');
});
const labels = document.querySelectorAll('#price_block .change_model_iphone .item label');
const select = document.querySelector('#select_model');const getFor = el => el.getAttribute('for');
// или
const getFor = el => el.attributes.for.value;
// или
const getFor = el => el.htmlFor;// можно перезаписать разметку
select.innerHTML = Array
.from(labels, n => `<option value="${getFor(n)}">iPhone ${n.innerText}</option>`)
.join('');
// или, напрямую создавать новые элементы
select.append(...Array.prototype.map.call(
labels,
n => new Option(`iPhone ${n.textContent}`, getFor(n))
));
<div class="text">hello, world!!</div>
<div class="text">fuck the world</div>
<div class="text">fuck everything</div>
<select></select>const texts = document.querySelectorAll('.text');
const select = document.querySelector('select');
select.append(...Array.from(texts, n => new Option(n.textContent)));
select.value = null;
select.addEventListener('change', ({ target: { selectedIndex } }) => {
texts.forEach((n, i) => n.classList.toggle('active', i === selectedIndex));
});
const select = document.querySelector('[name="select_model"]');
const radios = document.querySelectorAll('[name="model"]');select.addEventListener('change', ({ target: { value } }) => {
Array.prototype.find.call(radios, n => n.value === value).checked = true;
});radios.forEach(function(n) {
n.addEventListener('change', this);
}, e => select.value = e.target.value);