2012-06-25 40 views
8

Tôi đang viết một trình báo cáo lỗi cho ứng dụng của mình. Khi xảy ra sự cố, người dùng điền vào biểu mẫu và mô tả sự cố và điều này được gửi tới máy chủ. Là một phần của dữ liệu được thu thập trong biểu mẫu này, tôi muốn bao gồm lỗi javascript cuối cùng. Có cách nào để làm điều này không?Nhận lỗi Javascript cuối cùng

+0

bạn có thể chèn toàn bộ mã của bạn trong một khối try/catch, trong đó sẽ bắt tất cả những gì thất bại và không được đánh bắt trước đó. –

Trả lời

5

Bạn có thể triển khai hàm để ghi lại lỗi bằng cách sử dụng window.onerror (MDN docu). Bằng cách đó, lỗi cuối cùng có thể được lưu trữ trong window.localStorage hoặc bất cứ nơi nào bạn muốn và bạn có thể truy xuất lại lỗi đó khi báo cáo lỗi được điền.

+0

Hỗ trợ trình duyệt cho window.localStorage như thế nào? Tôi cần hỗ trợ tối thiểu IE 8. – Judson

+0

IE8 là tốt theo [caniuse.com] (http://caniuse.com/#search=localstorage). – Sirko

3

Bạn có thể gán chức năng cho window.onerror và lưu trữ thông tin lỗi từ các đối số.

+0

Cách thực hiện công việc này trong chrome 'var errors = []; window.onerror = function() { errors.push (đối số); }; ném lỗi mới ("asd") 'Hoặc nó chỉ làm việc cho các lỗi" thực "? Chỉnh sửa: không hoạt động cho 'ReferenceErrors' hoặc là – Esailija

6

bạn có thể sử dụng window.onerror

window.onerror = function(error, url, line) { 
    //save errors here 
}; 
Các vấn đề liên quan