2016-12-29 30 views
9

Có vẻ như ESDOC chỉ nhắm vào kiểu lớp ES6.Có thể ghi lại một đối tượng đơn giản bằng cách sử dụng ESDOC không?

Có cách nào để ghi lại một đối tượng đơn giản như:

/** 
* ??? 
*/ 
var Foo = { 
    /** 
    * ??? 
    */ 
    info: true 
}; 

export default Foo; 

Và ngay cả khi sử dụng ES6 lớp phong cách, làm thế nào để ghi lại một tài sản tĩnh như:

class Bar { 
} 

/** 
* ??? 
*/ 
Bar.info = true; 

export default Bar; 

Trả lời

5

Câu trả lời ngắn. Số

ESDOC được thiết kế đặc biệt để ghi lại các lớp ES6. Nó đúng trong tên. Từ FAQ:

ESDoc hỗ trợ ES2015 và sau

Nếu bạn cần ghi lại một hỗn hợp của ES6 + và thường xuyên (nguyên chủng) lớp học, JSDOC có thể là một cược tốt hơn. Nó khá trưởng thành và định dạng của nó là một loại tiêu chuẩn defacto.

Nếu bạn không thích hoặc không thể sử dụng gói JSDOC chính, có rất nhiều tùy chọn khác. Ví dụ, tôi đã thành công với jsdoc-to-markdown về các dự án của tôi. Bạn sẽ có thể tìm thấy các công cụ để chuyển đổi JSDOC sang bất kỳ định dạng nào bạn cần.

1

Đối với thành viên và biến bạn nên sử dụng @type

/** 
* @type {Object} 
* @property {boolean} Foo.info describe Foo.info 
*/ 
const Foo = { 
    info: true 
}; 

và cho thuộc tính tĩnh trong es6 bạn nên sử dụng className.method_member

/** 
* This is Bar description. 
*/ 
class Bar { 
    /** 
    * Bar.info 
    */ 
    static info=true 
} 

đầu ra kiểm tra esdoc here

+0

này không làm việc cho các thuộc tính phương pháp , chúng không được tạo đúng trong tài liệu – koningdavid

+0

cho các tham số phương pháp bạn nên sử dụng @param – fingerpich

+0

Tôi biết, nhưng tài liệu không tạo ra chính xác. Nó không decribe chức năng – koningdavid

Các vấn đề liên quan