Size: a a a

Советский Angular

2021 March 07

С

Светлана in Советский Angular
источник

IE

Igor' Ember in Советский Angular
Всем приветик!
Пытаюсь понять, какой смысл в defer
В примере выше, разве в первом случае при двух разных подписках каждый поток не получит разное случайное число (потому что подписываются на "холодный" поток), а чтобы он действовал так, как там описано, потребуется добавить в пайп что-то вроде share/shareReply?
Да и что значит, что выражение считается при объявлении,а не подписке? Я думала, что всё, что до subscribe - это что-то вроде декларации, которая не запускается, пока никто не подпишется. Чёт не понимаю, что в этой статье имеется в виду...
источник

N👩

Nikita 👩🏻‍💻💭... in Советский Angular
Igor' Ember
Всем приветик!
Пытаюсь понять, какой смысл в defer
В примере выше, разве в первом случае при двух разных подписках каждый поток не получит разное случайное число (потому что подписываются на "холодный" поток), а чтобы он действовал так, как там описано, потребуется добавить в пайп что-то вроде share/shareReply?
Да и что значит, что выражение считается при объявлении,а не подписке? Я думала, что всё, что до subscribe - это что-то вроде декларации, которая не запускается, пока никто не подпишется. Чёт не понимаю, что в этой статье имеется в виду...
defer позволяет делать отложенное выполнение кода засчет замыкания
источник

N👩

Nikita 👩🏻‍💻💭... in Советский Angular
То есть во втором случае значение проинициализируется только тогда, когда произойдёт подписка
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Igor' Ember
Всем приветик!
Пытаюсь понять, какой смысл в defer
В примере выше, разве в первом случае при двух разных подписках каждый поток не получит разное случайное число (потому что подписываются на "холодный" поток), а чтобы он действовал так, как там описано, потребуется добавить в пайп что-то вроде share/shareReply?
Да и что значит, что выражение считается при объявлении,а не подписке? Я думала, что всё, что до subscribe - это что-то вроде декларации, которая не запускается, пока никто не подпишется. Чёт не понимаю, что в этой статье имеется в виду...
смотри, когда ты выполняешь код of(Math.random()), то что произойдет?
источник

IE

Igor' Ember in Советский Angular
Вертихвост キバ 🏡🦊
смотри, когда ты выполняешь код of(Math.random()), то что произойдет?
До тех пор, пока нет подписки, вообще ничего не произойдёт.
Если подписываешься, то оно сразу исполняет одно значение. Второй подписчик создаёт новый поток и тоже должен получить значение, но другое (рандомное). Чтобы они имели одно значение, требуется использовать  share/shareReply или BehaviorSubject.
источник

S

Smooth Operator in Советский Angular
Igor' Ember
Всем приветик!
Пытаюсь понять, какой смысл в defer
В примере выше, разве в первом случае при двух разных подписках каждый поток не получит разное случайное число (потому что подписываются на "холодный" поток), а чтобы он действовал так, как там описано, потребуется добавить в пайп что-то вроде share/shareReply?
Да и что значит, что выражение считается при объявлении,а не подписке? Я думала, что всё, что до subscribe - это что-то вроде декларации, которая не запускается, пока никто не подпишется. Чёт не понимаю, что в этой статье имеется в виду...
ну, первый то горячий
а второй холдный
источник

IE

Igor' Ember in Советский Angular
Smooth Operator
ну, первый то горячий
а второй холдный
первый - это с defer который?
источник

S

Smooth Operator in Советский Angular
Igor' Ember
первый - это с defer который?
который просто of
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Igor' Ember
До тех пор, пока нет подписки, вообще ничего не произойдёт.
Если подписываешься, то оно сразу исполняет одно значение. Второй подписчик создаёт новый поток и тоже должен получить значение, но другое (рандомное). Чтобы они имели одно значение, требуется использовать  share/shareReply или BehaviorSubject.
Math.random() выполнится, и к примеру выпало число 0.14481382247037766, а значит, что у тебя будет такое of(0.14481382247037766)

☝️ вот этот момент ведь понятен?
источник

IE

Igor' Ember in Советский Angular
Вертихвост キバ 🏡🦊
Math.random() выполнится, и к примеру выпало число 0.14481382247037766, а значит, что у тебя будет такое of(0.14481382247037766)

☝️ вот этот момент ведь понятен?
ну да
источник

IE

Igor' Ember in Советский Angular
Smooth Operator
который просто of
почему горячий
это же обычный observable
и в пайпе у него ничего лишнего нет
источник

S

Smooth Operator in Советский Angular
Igor' Ember
почему горячий
это же обычный observable
и в пайпе у него ничего лишнего нет
потому что значение высчитывается еще до подписки
источник

S

Smooth Operator in Советский Angular
продюсер значения находится вне обсервабла
источник

IE

Igor' Ember in Советский Angular
Smooth Operator
потому что значение высчитывается еще до подписки
Странно.
А, хотя поняла. Там же нет колбека, это обычный стейтмент и функция вызывает. Тогда да, ясно.
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Igor' Ember
ну да
defer выполняет функцию, которую ты ему передаешь, и выполняет ее при подписке

const source = defer(() => of(Math.random()))
//☝️ вот такая декларация потока

source.subscribe(); // первая подписка
// ☝️ при подписке, defer выполнит переданную фукнцию, в которой создается поток of(0.4720875635882029)

source.subscribe(); // вторая подписка
// ☝️ при подписке, defer выполнит переданную фукнцию, в которой создается поток of(0.5247079941767909)
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Igor' Ember
Странно.
А, хотя поняла. Там же нет колбека, это обычный стейтмент и функция вызывает. Тогда да, ясно.
да
источник

K🦋

Kir 🦋 JS in Советский Angular
Так, я думаю постримить кодлаб, там еще остались какие-то задачки по rxjs которые хотели разобрать? @vetrovadariya @thekiba
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Kir 🦋 JS
Так, я думаю постримить кодлаб, там еще остались какие-то задачки по rxjs которые хотели разобрать? @vetrovadariya @thekiba
Можем разобрать пару операторов и кейсов
источник

K🦋

Kir 🦋 JS in Советский Angular
Вертихвост キバ 🏡🦊
Можем разобрать пару операторов и кейсов
норм, будет разогрев перед кодлабом
источник