0
這是mobx-utils的now()
實現的修改版本。根據我的理解,當觸發autorun
函數時,會記錄「initial」,然後在1秒後,每秒鐘再次產生Date.now()
,然後Date.now()
的值。不理解來自資源的MobX-utils的行爲
function createIntervalTicker(interval) {
let subscriptionHandle
return fromResource(
sink => {
subscriptionHandle = setInterval(
() => sink(Date.now()),
interval
);
},
() => {
clearInterval(subscriptionHandle);
},
'initial'
);
}
autorun(() => {
console.log(createIntervalTicker(1000).current())
})
但是,我每次都會一次又一次地註銷「初始」註銷。從不記錄Date.now()
的值。
看來,當調用sink(Date.now())
時,它只會觸發自動運行功能,但不會更新由current()
返回的值。
我將不勝感激任何意見。提前致謝。
[email protected]
[email protected]
D'哦,現在似乎很明顯。謝謝。 – nickbreaton