Component Memoization Support
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- typescript
- Lĩnh vực
- performance
Hướng nghiên cứu
Issue không nêu tệp, bài kiểm thử hay điểm vào nào. Hãy bắt đầu bằng cách xác định component registry và đường dẫn component-resolution trong mã TypeScript, sau đó đánh giá registry flag được đề xuất và external memoization wrapper. Công việc được xem là hoàn tất khi cách tiếp cận được chọn hỗ trợ các component đã memoize mà không cần logic memoization tùy chỉnh.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Requirements
To improve the performance of BlueRain projects, we need to figure out a way to add component memoization. This means for some components if they are passes same props, again and we expect the same output every time, we don't need to process the render again. We instead return a previous render result, that was cached during the first render.
Approach
The simplest solution at this time seems to be as follows:
- Add a cache or memoize property for each component in registry.
- During component resolution, for every component that has cache (or memoize) property set to ture, just wrap the component in an hoc from one a memoize library (e.g. moize
Not Doing
- Implementing custom memoization logic
Possible Memoize libraries
Useful Links
- Ngôn ngữ chính
- TypeScript
- Star
- 3
- Fork
- 1
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của BlueBaseJS/core
-
New LogoCó thể làm lại được @aftabkhalid đã nhận 2551 ngày trước và không có pull request nào đang mở. Đang mởenhancement
BlueBaseJS/core#149 · 1 bình luận · 1 người được giao ·
-
Document Minimum RequirementsCó thể làm lại được @taha437 đã nhận 2586 ngày trước và không có pull request nào đang mở. Đang mởdocumentation good first issue
BlueBaseJS/core#70 · 1 bình luận · 1 người được giao ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
BlueBaseJS/core#45 ·
-
Cache Filter ResultsĐang mởenhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
BlueBaseJS/core#10 ·
-
SSR APIĐang mởenhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
BlueBaseJS/core#8 ·
Tất cả issue của BlueBaseJS/core
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
aiko-chan-ai/DiscordBotClient#380 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
vercel/ai-elements#507 ·
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 84/100
anaclumos/qa-interns#148 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày