# 使用

# 实例方法

# comment.ajax(options)

参数名称 描述 类型 默认值 可选值
options Ajax 请求参数配置项 Object -- 与 jQuery / Zepto Ajax 请求参数一致
  • 用法:
    该函数用法与 $.ajax() 并无不同,但由于该方法为 Ajax 请求的高级封装,所以仅适用于评论相关接口数据请求,不适用于其他接口请求。
    我们已经预设了所有评论相关接口的请求路径,所以你只需使用预设的 URL 标识即可调用对应接口:

    * `'USER_INFO'` 获取用户信息
    
    * `'COMMENT_LIST'` 获取评论列表
    
    * `'DELETE_COMMENT'` 删除评论
    
    * `'LIKE'` 评论点赞
    
    * `'REPORT'`举报评论
    
    * `'REPLY_LIST'` 获取回复列表
    
    * `'SUBMIT_REPLY'` 提交新回复
    
    * `'DELETE_REPLY'` 删除回复
    
  • 示例:

comment.ajax({
  url: 'USER_INFO',
  success: data => {
    // 获取用户信息
  },
})
1
2
3
4
5
6

# comment.refresh([config])

参数名称 描述 类型 默认值 可选值
config 刷新参数配置项 Object {} 与构造函数参数配置项一致,详见 选项
  • 用法:
    更新评论组件,一般用于单页应用路由切换后刷新评论内容。

  • 示例:

// 初始化当前评论组件
comment.refresh()

// 刷新并加载新评论数据
comment.refresh({
    options: {
        title: '切换评论'
        objid: '1507703738959'
    }
})
1
2
3
4
5
6
7
8
9
10

注意:目前仅响应 config.options 的更新操作。

# comment.requestCommentList()

  • 用法:
    请求评论列表,每次调用自动加载下一页数据。
    通常情况下,你并不需要手动调用该方法,因为当构造函数参数 infinite 传入有效的预设值时,组件会在恰当的时机自动调用该方法。
    如果预设的加载逻辑不满足要求(例如使用 Iscroll 控制滚动时),手动调用该方法是非常必要的,不过别忘了将 infinite 设为 none

  • 示例:

let iscroll = new IScroll({ /* ... */ })
iscroll.on('scrollEnd', function () {
    if ( /* 加载条件判断 */ ) {
        comment.requestCommentList()
    }
})
1
2
3
4
5
6

# comment.submitComment(content)

注意:此方法仅支持 v3.6 +

参数名称 描述 类型 默认值 可选值
content 评论内容 String -- --
  • 用法:
    发表评论接口,返回一个 Promise 实例。

  • 示例:

comment.submitComment('新评论').then(
  () => {
    console.log('发表成功')
  },
  () => {
    console.log('发表失败')
  }
)
1
2
3
4
5
6
7
8