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

Accessibility lookups fetch the entire DOM tree once per selector

Đang mở Phù hợp với người mới
#262 0 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ó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
68/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
playwright, typescript
Lĩnh vực
performance, testing

Hướng nghiên cứu

Trong src/deps/real.ts, hãy kiểm tra backendNodeIdForSelector và cách nó lấy gốc tài liệu. Trước tiên, so sánh một yêu cầu depth: 0 với yêu cầu depth: -1 hiện tại, sau đó thêm bài kiểm thử trên trình duyệt thực được mô tả trong issue để phân giải cùng một tập hợp bộ chọn theo cả hai cách. Công việc hoàn tất khi các giá trị backendNodeId khớp nhau và chi phí tra cứu được đo.

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

Mô tả

area: engine enhancement performance

What

backendNodeIdForSelector in src/deps/real.ts sends DOM.getDocument with depth: -1, serializing the whole document over the DevTools protocol, and reads only root.nodeId from the result.

Evidence

Measured on a real product UI: 45 calls at 191 ms each, 8.6 seconds of a 55 second scan, 34 percent of the PatternFly rule phase. Every other DevTools call in the scan averaged 2 to 3 ms.

Direction

Request depth: 0 (root only) or cache the root node id per document. Same node, same querySelector, same backendNodeId, so the observation does not change. Prove identity with a real-browser test that resolves a selector set both ways and asserts equal backendNodeId values, then measure.

Ngôn ngữ chính
TypeScript
Star
0
Fork
0
Merge trung bình
2 giờ 48 phút
Pull request đã merge (30 ngày)
8

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

  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 usabl-dev/usabl

Tất cả issue của usabl-dev/usabl

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.