Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Only Rerender "DAO Connected" Components

Đang mở
#3 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

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ái cấu trúc
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
react, typescript
Lĩnh vực
frontend, performance

Hướng nghiên cứu

Bắt đầu bằng việc xem xét hành vi đăng ký component được mô tả cho Arc.Config, DAO và DAO.Data, đặc biệt là cách các cập nhật trạng thái của DAO kích hoạt việc render lại. Thu thập các số liệu được đề xuất trước khi quyết định có theo đuổi việc tối ưu hóa hay không; được xem là hoàn tất khi xác lập được phạm vi đã đo lường và được thống nhất để chỉ render lại các component được kết nối với DAO.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

hi-pri perf-enhancement

Only rerender components that are "DAO Connected".

This can be done through supporting a subscription model, where components that depend on additional contextual information (ex: , ).

For example, consider...

<Arc config={new Config("web3provider", "graphqlprovider")}>
  <View1 />
  <DAO address={"0x1234"}>
    <View2 />
    <DAO.Data>
      {data => (
        <View3 value={data.value} />
      )}
    </DAO.Data>
  </DAO>
</Arc>

Ideally, if Arc.Config's web3 provider changes, View1 & 2 shouldn't have to rerender, but View3 should because the data may be different. This can be partially achieved if DAO connect's the Arc.Config's subscriber list, which will cause it to be told to rerender if the config ever changes, but this only causes View1 to not be rendered. View2 would still be rendered because currently the data is stored within the Component's state (the DAO's state), which would cause View2 to still be rendered.

Going to leave this here for now, as it'll be interesting to come back to this after some metrics have been gathered, as I feel this may be premature optimization.

Ngôn ngữ chính
TypeScript
Star
21
Fork
9
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

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

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của dOrgTech/arc.react

Tất cả issue của dOrgTech/arc.react

Issue tương tự

Thêm issue về TypeScript

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.