Bug: Contact form submission fails because of invalid `FormData` conversion
Maintainer thường phản hồi trong vòng 1 ngà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
- 25/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- typescript
- Lĩnh vực
- frontend
Hướng nghiên cứu
Bắt đầu với website/src/components/marketing/talk-to-an-engineer/form.tsx và website/src/components/marketing/sales/form.tsx, tập trung vào việc chuyển đổi FormData trong từng submit handler. Xác minh rằng việc gửi hoàn tất, các trường được thu thập được chuyển thành một object và việc tracking của PostHog và Sentry vẫn tiếp tục chạy mà không có lệnh gọi chuyển đổi không hợp lệ.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Bug: Contact form submission fails because of invalid FormData conversion
Summary
The marketing contact forms fail at submit time because the code attempts to call toArray() on FormData.entries(). This is not a valid browser API and causes the submit handler to throw before analytics or feedback hooks can run.
Affected files
- website/src/components/marketing/talk-to-an-engineer/form.tsx
- website/src/components/marketing/sales/form.tsx
Steps to reproduce
- Open any of the marketing forms.
- Fill in the required fields.
- Submit the form.
- The page throws an error during submit handling.
Expected behavior
The form should submit successfully and send the captured data to PostHog and Sentry without crashing.
Actual behavior
The submit handler throws because formData.entries().toArray() is invalid. The form never completes submission and user conversion flow breaks.
Root cause
FormData.entries() returns an iterator, not an array. Calling .toArray() is invalid in the browser runtime.
Fix implemented
The code was updated to use a valid conversion approach:
Array.from(formData.entries())
This preserves the form values correctly and allows Object.fromEntries(...) to work as expected.
Impact
- Contact form submissions can fail
- Lead capture flow breaks
- Analytics and feedback tracking may not fire
Verification
The fix was applied in the form handlers and the invalid method call was removed from the affected files.
Acceptance criteria
- Form submission completes without throwing an error
- Captured field values are correctly converted into an object
- PostHog and Sentry tracking still run as expected
- Ngôn ngữ chính
- TypeScript
- Star
- 2
- Fork
- 6
- Merge trung bình
- 6 giờ 43 phút
- Pull request đã merge (30 ngày)
- 56
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không 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 rivet-dev/website
-
Bug: Secure Exec hero copy disappears on mobileCó thể đã có người làm @Utkarshpandey0001 đã nhận 12 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 62/100
rivet-dev/website#126 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của rivet-dev/website
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
MystenLabs/MemWal#1163 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Mondriaan
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
knaw-huc/textannoviz#709 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
billion-context-pi
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
ranxianglei/billion-context#2521 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Add: YRF Music NepalĐang mởstreams:add
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 62/100
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 72/100