AP
Size: a a a
AP
AP
PM
any[]
(хотя должно быть T[]
) и возвращают в слоты any
. С ними лучше всего справляться самописными тайп-гардами: функция, которая принимает any
и либо бросает исключение, либо подтверждает, что тип у этой переменной нужный нам. Морока, конечно. Нужно писать немного мусорный код (let:data={untyped}
и <Cmp prop={typeGuard(untyped)} />
), но безопасность превыше всего.A
A
unify(e) { return e.changedTouches ? e.changedTouches[0] : e };
start - x = unify(e).clientX;
move - const dx = unify(e).clientX - x;
A
A
eventStart(e) {
starttime = e.timeStamp
}
eventEnd(e) {
endtime = e.timeStamp
time = endtime - starttime
}
MZ
eventStart(e) {
starttime = e.timeStamp
}
eventEnd(e) {
endtime = e.timeStamp
time = endtime - starttime
}
MZ
A
A
A
A
MZ
MZ
IF
Р
MZ
Р
Р