Tôi đang sử dụng lớp cơ sở "$.widget()
" của jQuery cung cấp phương thức option()
. Vì phương thức này không có trong mã của tôi, tôi không có chỗ để ghi lại đối số.JSDoc: Làm cách nào để ghi lại "tùy chọn" đối tượng theo nghĩa đen cho "lớp" cha mẹ?
Tôi đã cố gắng đặt jsDoc trên các trường trong tùy chọn mặc định theo nghĩa đen, nhưng chúng đơn giản là không được chọn. Sau đó, tôi đã cố gắng sử dụng các thẻ @class
và @lends
trên cùng một đối tượng theo nghĩa đen, nhưng điều này có thể khá khó hiểu vì đối tượng theo nghĩa đen không thực sự là một lớp.
Một phương án khác mà tôi đã thử nghiệm là đặt một cái gì đó như @param options.field description
vào jsDoc của hàm tạo. Tuy nhiên, điều này có bất lợi khi tách tài liệu khỏi mã. Ngoài ra, hàm tạo không thực sự có một đối số được gọi là options
vì tất cả được xử lý bởi jQuery.
Chuyên gia Javascript của bạn xử lý việc này như thế nào? Thẻ mới có nên được đề xuất không?
Câu hỏi của bạn nghe có vẻ rất giống với cái này: http://stackoverflow.com/questions/6460604/how-to-describe -object-arguments-in-jsdoc –
@LeviHackwith Có, nó tương tự, nhưng như tôi đã mô tả trong câu hỏi chính nó, tôi không có một nơi mà tôi có thể sử dụng thẻ @param bởi vì các anh chàng jQuery đã triển khai tất cả mã tấm nồi hơi (bao gồm cả hàm 'options()' trong đó thẻ @param thường được sử dụng.) –
['/ ** @param {Object.} tùy chọn */'] (http://code.google.com/p/closure-compiler/source/browse/trunk/contrib/externs/jquery-1.7.js) có vẻ là một cách để thực hiện. –