我想知道如何记录如下函数:
loadMore(){
let posts = this.state.posts;
let lastPost = posts[posts.length - 1];
$.ajax({
url: this.paginationURL(),
data: { page: lastPost.id },
type: 'GET',
dataType: 'json',
success: (response) => {
this.setState({
posts: this.state.posts.concat(response.posts)
})
}
})
}
从技术上讲,this.type是一个输入参数,this.input是从该对象返回的内容。如何记录这个?
答案 0 :(得分: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原则。
答案 1 :(得分:-1)
最好以某种方式重写代码,以便它接受参数并返回一些没有任何副作用的值。也很容易记录!
问题应该更像是如何避免副作用,而不是如何记录副作用。
var createInput = function (type) {
return {
val: {},
type: type
};
}
this.input = createInput(this.type);