setTimeout(function() {
console.log(this.resorts.join(', '));
}.bind(this), delay);
var that = this;
setTimeout(function() {
console.log(that.resorts.join(', '));
}, delay);
<button data-block="block-one">69</button>
<button data-block="block-two">187</button>
<button data-block="block-three">666</button>
<div class="block block-one">hello, world!!</div>
<div class="block block-two">fuck the world</div>
<div class="block block-three">fuck everything</div>
$('body').on('click', 'button', function() {
const $block = $(`.${this.dataset.block}`).toggleClass('show');
$('.block').not($block).removeClass('show');
});
// или
document.addEventListener('click', ({ target: { dataset: { block } } }) => {
if (block) {
document.querySelectorAll('.block').forEach(({ classList: cl }) => {
cl[cl.contains(block) ? 'toggle' : 'remove']('show');
});
}
});
<button class="button">69</button>
<button class="button">187</button>
<button class="button">666</button>
<div class="block block-one">hello, world!!</div>
<div class="block block-two">fuck the world</div>
<div class="block block-three">fuck everything</div>
const $blocks = $('.block');
const $buttons = $('.button').click(function() {
const $block = $blocks.eq($buttons.index(this)).toggleClass('show');
$blocks.not($block).removeClass('show');
});
// или
const blocks = document.querySelectorAll('.block');
const buttons = document.querySelectorAll('.button');
buttons.forEach(n => n.addEventListener('click', onClick));
function onClick() {
const index = Array.prototype.indexOf.call(buttons, this);
blocks.forEach((n, i) => n.classList[i === index ? 'toggle' : 'remove']('show'));
}
fs.open(fname, 'a', (err, file_handle) => {
if (!err)
this.file_handle = file_handle;
this.dataCalendar.curMonth++
this.dataCalendar.curYear--
curMonth < 11
, curMonth > 0
... Изменился месяц - надо поменять день (или не надо?), надо поменять год (или не надо - по-всякому бывает), поменять ещё чёрт знает что. Увеличили день - надо менять месяц, если это 30/31 число, иногда год - если было 31 декабря. Ну и т.д. и т.п.curMonth++
будет что-то вродеcurDate = new Date(curDate.setMonth(curDate.getMonth() + 1))
computed: {
calendarData() {
return {
year: this.curDate.getFullYear(),
month: this.curDate.getMonth(),
// ...
};
}
}
$('#given1').on('change', 'select', function(){
addNewSelect();
});
$('#given1').on('change', 'select', addNewSelect);
.on('change blur',
. $checkValue = function($arrPostKey, $value) use(&$errors) {
function checkValue($arrPostKey, $value, &$errors) {
function checkValue($arrPostKey, $value) {
global $errors;
Часть начального кода с v-for я пропустил.
types.id == date.activities[i].type_id
date.activities.every(n => n.type_id == types.id)
data: () => ({
items: [
{ buttonText: '+', className: 'container' },
{ buttonText: '-', className: 'container-fluid' },
],
...
}),
<button
v-for="n in items"
v-text="n.buttonText"
:class="{ active : active === n.className }"
@click="active = n.className"
></button>
items.slice...
надо было унести в computed):<div v-for="item in items.slice((page - 1) * perPage, page * perPage)">
{{ item }}
</div>
computed: {
numPages() {
return Math.ceil(this.items.length / this.perPage);
},
},
methods: {
next(change) {
this.page = Math.max(1, Math.min(this.numPages, this.page + change));
},
},
<button @click="next(-1)" :disabled="page <= 1">prev</button>
<button @click="next(+1)" :disabled="page >= numPages">next</button>