Làm thế nào tôi có thể nói với JSDoc về cấu trúc của một đối tượng được trả về. Tôi đã tìm thấy @return {{field1: type, field2: type, ...}} description
cú pháp và thử nó:
/**
* Returns a coordinate from a given mouse or touch event
* @param {TouchEvent|MouseEvent|jQuery.Event} e
* A valid mouse or touch event or a jQuery event wrapping such an
* event.
* @param {string} [type="page"]
* A string representing the type of location that should be
* returned. Can be either "page", "client" or "screen".
* @return {{x: Number, y: Number}}
* The location of the event
*/
var getEventLocation = function(e, type) {
...
return {x: xLocation, y: yLocation};
}
Trong khi phân tích cú pháp này thành công, tài liệu kết quả chỉ nêu rõ:
Returns:
The location of an event
Type: Object
Tôi đang phát triển API và cần mọi người biết về đối tượng mà họ sẽ được trả lại. Điều này có thể có trong JSDoc không? Tôi đang sử dụng JSDoc3.3.0-beta1.
@typedef
là một cách giải quyết / giải pháp, nhưng có vẻ lạ khi điều này không hoạt động với các đối tượng theo nghĩa đen. Nếu có ai tình cờ phát hiện ra điều này trong tương lai (như tôi đã làm) tôi đã thêm một vấn đề github.com/jsdoc/jsdoc/issues/1678 có thể có nhiều thông tin hơn trang này.