if(b.items[i].member_id < 0) {
...
}
Если location задан префиксной строкой со слэшом в конце и запросы обрабатываются при помощи proxy_pass, fastcgi_pass, uwsgi_pass, scgi_pass, memcached_pass или grpc_pass, происходит специальная обработка. В ответ на запрос с URI равным этой строке, но без завершающего слэша, будет возвращено постоянное перенаправление с кодом 301 на URI с добавленным в конец слэшом.
absolute_redirect off;
class UserModel {
email: string;
password: string;
}
class UserDTO {
protected __guard: never; // добавляем фиктивное поле
email: string;
}
const getUser = async (email: string): Promise<UserDTO> => {
const user = await db.find(email);
return user; // Ошибка, как заказывали
}
interface PostAttachVideo {
type: 'video'
attach: AttachVideo
}
interface PostAttachAudio {
type: 'audio'
attach: AttachAudio
}
type PostAttach = PostAttachAudio | PostAttachVideo
function isAudio(attach: PostAttach): attach is PostAttachAudio {
return attach.type === 'audio';
}
const [a, b, c, d, f, g= ''] = value.match(/\d+/g)!;
const [a, b, c, d, f, g= ''] = value.match(/\d+/g) || [];
<linearGradient gradientUnits="userSpaceOnUse" ...>
<svg class="inline-svg-icon" fill="url(#red-blue)"><use...>
по сути каждый элемент просто наследует этот атрибут fill. И по умолчанию градиент рисуется в границах элемента. Если же указать userSpaceOnUse, то градиент будет рисоваться в пределах текущего viewport.interface ModelOptionRange {
value: [ number, number ];
range: true;
}
interface ModelOptionValue {
value: number;
range: false;
}
type ModelOption = ModelOptionRange | ModelOptionValue;
function check(v: number, cond: ModelOption): boolean {
if (cond.range) {
// тут cond точно типа ModelOptionRange
const [ min, max ] = cond.value;
return (min <= v && v <= max);
} else {
// а тут ModelOptionValue
return v === cond.value;
}
}
server {
listen 80;
server_name *.example.com;
return 301 https://$host$request_uri;
}
FROM ubuntu
ENV TZ=Europe/Moscow
RUN apt-get update && apt-get install -yy tzdata
RUN cp /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
$ docker build .
Sending build context to Docker daemon 2.048kB
Step 1/4 : FROM ubuntu
---> d70eaf7277ea
Step 2/4 : ENV TZ=Europe/Moscow
---> Using cache
---> 24c7e693dacf
Step 3/4 : RUN apt-get update && apt-get install -yy tzdata
---> Using cache
---> 8d1bbd58900b
Step 4/4 : RUN cp /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
---> Using cache
---> b65965107725
Successfully built b65965107725
$ docker run b65965107725 date
Thu Oct 29 21:09:13 MSK 2020
$ date
Thu Oct 29 21:09:15 MSK 2020