type="text/babel" вашему отдельному файлу при подключении.
const months = Array.from({ length: 12 }, (n, i) => {
return new Date(0, i).toLocaleString('en', { month: 'short' }).toLowerCase();
});
const newArr = arr.map(({ data, ...item }) => (
data.forEach((n, i) => item[months[i]] = n),
item
));
function () { axios.get(api.udpEmulatorProxy)
return axios.get?this.getShips() this.$store.commit('getShips', 10)
get? - смысл-то в установке значения, так что правильно было бы set) передавать те данные, что возвращает getShips:this.$store.commit('getShips', await this.getShips());
link, screen - без цифр..screen определяете ещё один класс:.screen {
display: none;
}
.screen.active {
display: flex;
}$(document).on('click', '.link', function() {
const $screen = $(this).next().toggleClass('active');
$('.screen.active').not($screen).removeClass('active');
});
function combine(keys, values) {
const length = Math.max(0, ...values.map(n => n.length));
const arr = Array.from({ length }, () => ({}));
values.forEach((n, i) => n.forEach((v, j) => arr[j][keys[i]] = v));
return arr;
}
// или
const combine = (keys, values) =>
Array.from(
{ length: values.reduce((max, { length: n }) => max > n ? max : n, 0) },
(_, j) => keys.reduce((acc, k, i) => (
j < values[i].length && (acc[k] = values[i][j]),
acc
), {})
);
// или
const combine = (keys, values) =>
keys.reduce((acc, k, i) => (
values[i].forEach((v, j) => (acc[j] = acc[j] || {})[k] = v),
acc
), []);const newArray = combine([ 'name', 'id' ], [ nameArray, idArray ]);
Пользователь выбирает несколько таких чекбоксов и нажимает кнопку "Выбрать".
selected() {
return this.filters.map(n => ({
filterId: n.filterId,
values: n.filterData.variants.filter(m => m.checked).map(m => m.key),
}));
},
const widgetData = [
{ name: 'something', value: 14, date: '02.08.2018' },
{ name: 'something', value: 43, date: '03.08.2018' },
{ name: 'something', value: 44, date: '04.08.2018' },
{ name: 'something', value: 38, date: '05.08.2018' },
];
const startDate = '01.08.2018';
const endDate = '25.08.2018';
const widgetDataObj = widgetData.reduce((acc, n) => (acc[n.date] = n, acc), {});
const start = new Date(startDate.split('.').reverse().join('-'));
const end = new Date(endDate.split('.').reverse().join('-'));
const result = [];
for (; start <= end; start.setDate(start.getDate() + 1)) {
const date = start.toLocaleDateString('ru-RU');
result.push(widgetDataObj[date] || {
name: 'something',
value: 0,
date,
});
}
console.log(result);
const filterItem = (list, item) =>
list.map(n => ({
...n,
items: n.items.filter(m => m.id !== item.id),
}));function removeItem(list, { id }) {
list.forEach(({ items: n }) => {
n.splice(0, n.length, ...n.filter(m => m.id !== id));
});
}
DELETE FROM pos WHERE num < 10000?num::integer < 10000.
function recalc() {
const register = +$('[name="radio-register"]:checked').data('value');
$('#price_result, #price1').text(register
? register +
+$('#count-class option:selected').data('value') +
+$('[name="radio-znak"]:checked').data('value')
: 0
);
}
$('input[name="radio-znak"], input[name="radio-register"], #count-class').change(recalc);
recalc();
const max = (data, key = n => n) =>
Array.prototype.reduce.call(data, (max, n) => {
const val = key(n);
return val > max[1] ? [ n, val ] : max;
}, [ null, -Infinity ]);const [ item, value ] = max(
form.querySelectorAll('.kursBtn'),
n => +n.nextElementSibling.value
);
form.querySelector('#winner').value = `${item.name} - ${value}`;
data() {
return {
items: ['iPhone 7', 'Galaxy S8', 'Nokia N8', 'Xiaomi Mi6'],
};
},