AllenCell / AllenCell/vole-core

internals: setState api and efficient render updates

Đang mở
#90 3 bình luận 0 reaction 1 người được giao Được @frasercl nhận Xem trên GitHub
Tech Debt
Ngôn ngữ chính
TypeScript
Star
106
Fork
11
Merge trung bình
3 ngày 51 phút
Pull request đã merge (30 ngày)
12

Mô tả

## Use Case

As a developer, the public api is too spread out over many functions that have partial side effects.
We would like to be able to update large chunks of state with only one function call.

## Solution

Copy the data structure from https://github.com/allen-cell-animated/website-3d-cell-viewer/issues/110 down into volume-viewer and export it.
Partially implement the react-like state update mechanism as discussed in Teams call in volume-viewer, starting only with VolumeOptions (our temporary name for the appearance and channel editing information).
We believe this can be implemented at low technical risk as an alternate code path that doesn't modify any of the other public api or internal Drawable classes.
After some nontrivial tbd amount of functionality is in, we can assess the impact on performance and code maintainability/readability.

The end goal which may require followup issues is to have all settings updated via this mechanism and remove the individual setters in the api. A requirement for the final goal will be to have good documentation of the whole data structure and a clear path forward for future modifications.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.