2016-12-15 3 views
0

내가 같은 기능을 문서화하는 방법 궁금 반환하는 방법 다음 :JSDocs - 암시 적 매개 변수를 문서화하고

var createInput = function() { 
    var type = this.type; 

    this.input = { 
    val: {}, 
    type: type 
    }; 
} 

을 기술적으로 this.type는 입력 매개 변수가되고 this.input이 개체에서 반환 무엇인가 . 어떻게 문서화하겠습니까?

답변

-1

인자를 취하고 부작용없이 어떤 값을 반환하도록 코드를 수정하십시오. 문서화하기 쉽다!

문제는 부작용에게 부작용를 문서화하는 방법보다는 을 방지하는 방법을 더 같이해야한다.

var createInput = function (type) { 
    return { 
    val: {}, 
    type: type 
    }; 
} 

this.input = createInput(this.type); 
+0

원칙적으로 다소 동의하지만 암묵적으로 공유 변수가있는 코드에서 많은 계층 구조를 사용하고 있습니다. 기본적으로 'this'를 통해 직접 액세스 할 수 있지만 모든 함수에서 '컨텍스트'를 매개 변수로 보내야합니다. 질문 : JSDocs에서 클래스 변수를 문서화하려면 어떻게해야합니까? – PunkCode

+0

'object'를 매개 변수로 사용 하시겠습니까? – sabithpocker

+1

[this] (http://usejsdoc.org/tags-param.html#parameters-with-properties) 및 [this] (http://usejsdoc.org/tags-typedef.html)를 확인하십시오. – sabithpocker

0

sapithpocker에 의해 두 번째 링크의 리프잉이 잠재적 인 해결책을 제시하는 것으로 보입니다.

/** 
* The context of the current class. 
* @typedef {Object} ClassContext. 
* @property {string} type - Indicates type. */ 

/** 
* A method for doing something. 
* @param {...ClassContext} this - a {@link ClassContext} object. 
*/ 
function createInput() { /* Code */ } 

이 아니라, 용도가 현재 상황, 즉 this을 "소유"객체 각각의 방법에 대해 재사용 될 수 문서이고, DRY 원리를 따른다.