✅whiteListにないページとカードは表示しない (takker99/ScrapBubble)
takker99/ScrapBubbleのscrapbox-card-bubbleおよびscrapbox-text-bubbleでは、親のbubblesで一度表示したものを再度子孫bubblesで表示しないようにしている
役割
重複を避ける
[A]→[B]←[A]→[B]←[A]→[B]←……などのように循環してbubbleを無限に表示できてしまうのを避ける
何度も同じ情報が出てくるとうざったいので、表示しないようにしている
条件
親の<Page />で表示した、whiteListと現在projectにおける全ての同名ページ
<Card />だけで表示したページは重複してもいい
External Linksで表示したwhiteListにないprojectのカードは重複除去しない
やれたらやりたいこと
単体テストで計算が正しいか判定したい
が、hooks中に埋め込まれているため、このままではテストできない
ロジックだけ純粋函数として抜き出すか?
✅re-render抑制 (takker99/ScrapBubble)
✅whiteListにないページとカードは表示しない (takker99/ScrapBubble)#63be2d801280f00000b3ede0
2023-01-11
12:04:48 だいたい直ったと思うのでmergeする
11:49:43 External Linksをhoverすると、少し間を置いてなぜかカードが消えたり戻ったりしていた
external links経由の逆リンク情報は、大本のページへの逆リンク以外は不完全なものしか取得できないせい
修正
てことはこの2行もいらないかも
そのうちやる
09:20:25 Bubbleの更新処理がおかしいみたい
linkedとprojectLinkedが表示されない
この2つは常に新しい方を採用するしかないか
checkedの値が変わらないのが気になる
同じ値にしていたので修正した
10:12:49 update()を書き直した
更新日時で大雑把にチェック
更新日時が新しくなければ、lines, linked, projectLinked, checkedのみを更新する
checkedのみの更新は、object参照を壊さない
不要な再レンダリングを抑制する
08:47:01 ✅whiteListにないページとカードは表示しない (takker99/ScrapBubble)#63bdf6e51280f00000001da2e6を修正する
external linksを取得するとき、whiteListに属するprojectで親とタイトルが一致するページカードがあったときに除外すればいい
した
08:44:10 条件をミスっていた
||にしてしまったせいで、現在projectでない全てのページカードが非表示になってしまった
修正した
2023-01-11
17:45:32 whiteListにないページの<Page />が表示されてしまっていた
表示しないようにする
あと内部リンク経由の関連ページも、whiteListにないものを除外する
17:55:08 できた
間違えてmainに直接pushしてしまった……
mainに直接pushできないようにしておこう
17:56:54 設定項目が見つからなかった
18:58:25 エッジケース発見
https://gyazo.com/ce93a941c3f0f2188daf0a39b1424a42
External links経由だと、親と同じページが表示されてしまう
まあ、カードが表示されるだけで本文まで2回も3回も表示されるわけじゃないから、別にいいか。
それより、whitelistに入っているのに、カードをhoverしてもなにも表示されないのが気になる
後日調べる
#2023-01-11 08:38:12
#2023-01-10 19:02:54