Menu auto-closes on MenuItem.template clicks even when interacting with custom content
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 50/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- react
- Lĩnh vực
- frontend
Hướng nghiên cứu
Bắt đầu từ việc xử lý thao tác nhấp vào mục popup Menu và tái hiện vấn đề với ví dụ MenuItem.template và Checkbox được cung cấp. Theo dõi cách các thao tác nhấp vào nội dung template được xử lý, sau đó xác minh rằng việc tương tác với các phần tử template vẫn giữ menu mở, trong khi hành vi thông thường của các mục menu không thay đổi.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Title: Menu auto-closes on MenuItem.template clicks
Description:
When using a Menu with MenuItem.template, any click inside the template (e.g., a checkbox) closes the menu immediately. The menu should stay open while interacting with elements inside the template.
Minimal Reproducible Example:
import React, { useState, useRef } from "react";
import { Menu } from "primereact/menu";
import { Button } from "primereact/button";
import { Checkbox } from "primereact/checkbox";
export default function ColumnMenuExample() {
const menuRef = useRef<Menu>(null);
const [checked, setChecked] = useState(false);
const items = [
{
template: () => (
<div onClick={(e) => e.stopPropagation()}>
<Checkbox checked={checked} onChange={() => setChecked(!checked)} />
Column 1
</div>
),
},
];
return (
<div>
<Button label="Toggle Menu" onClick={(e) => menuRef.current?.toggle(e)} />
<Menu ref={menuRef} popup model={items} />
</div>
);
}
Steps to Reproduce:
- Click “Toggle Menu”.
- Click the checkbox inside the menu.
Actual behavior: Menu closes after checkbox click.
Expected behavior: Menu should stay open while interacting with template elements.
Workaround: Adding onClick={(e) => e.stopPropagation()} on the template prevents auto-close.
Environment:
"primereact": "^10.9.7",
"react": "19.2.1",
- Ngôn ngữ chính
- CSS
- Star
- 8.3k
- Fork
- 1.2k
- 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
- Đọ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 primefaces/primereact
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
primefaces/primereact#8552 ·
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 88/100
primefaces/primereact#8550 ·
-
Row checkbox selection tick is invisible in Landing Page Theme sectionCó thể đã có người làm @Prakash1185 đã nhận 153 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
primefaces/primereact#8545 ·
-
Dependency conflict between jspdf v4 and jspdf-autotable during npm installCó thể đã có người làm @Kamran92 đã nhận 168 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
primefaces/primereact#8537 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 58/100
primefaces/primereact#8551 ·
Tất cả issue của primefaces/primereact
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
oxidecomputer/skepsis#102 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
prio:low web
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
digitalfabrik/entitlementcard#3246 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
linagora/twake-calendar-frontend#1924 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
anomalyco/opencode#61221 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày