andreypopp / andreypopp/react-derivable

React bindings vs vanilla js - multiple derivations' recalculation

オープン
#3 コメント 3 件 リアクション 0 件 担当者 0 名 GitHub で見る
bug
主要言語
JavaScript
スター
122
フォーク
5
PR マージ指標
30日以内にマージされた PR はありません

説明

Hey,

I'm playing with derivablejs and wanted to use it with your react bindings but I'm having one issue that I cannot understand. I've created simple project to better illustrate stuff https://github.com/mostr/derivablejs-react-vanilla-sandbox

**Scenario**
There is a mailbox that is empty on start. By clicking a button you can load emails and then once loaded you can click single email to mark it as read. Emails are loaded as "map" keyed by their `id`. To render them it's better to have them as list, that's why there is derivation `emailsAsList` that is used to render stuff.

**Problem**

React version seems to be calling derivations' calculation multiple times even if nothing was really changed in the meantime (so as I understand, previous value should be reused). This is not the case with vanilla JS implementation, where calculations are only called once (when required).

There is `console.log` statement in derivation calculation function that allows observing when it gets called.

**Question**
Is there something I don't get in how react bindings work here or I do something wrong? Would be great if you could advise me on that a bit. Thank!

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。