@discuzq/sdk
Version:
discuz dsk
167 lines (147 loc) • 5.62 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.readThreadList = readThreadList;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
require("regenerator-runtime/runtime.js");
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _handleError = require("../utils/handle-error");
var _example = _interopRequireDefault(require("../_example"));
var _excluded = ["params", "data"];
var _fields;
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
/**
* 入参验证规则,具体配置请看:https://github.com/yiminghe/async-validator
*
* @example
* const validateRules = {
* name: {
* type: 'number',
* required: true,
* },
* };
*/
var validateRules = {
page: {
// 页码
type: 'number',
required: false
},
perPage: {
// 每页数据条数。不传则默认20,最大值50
type: 'number',
required: false
},
sequence: {
// 默认排序如果使用这个参数,在为0或者为空的情况下才会执行filter.complex参数
// 0.返回正常列表 1.默认智能排序列表
type: 'number',
required: false
},
preload: {
// 预加载数据,在第一页异步调用该接口,可以触发后端提前缓存数据
type: 'boolean',
required: false
},
filter: {
type: 'object',
required: false,
fields: (_fields = {
// 多类型筛选
// 0:为不使用 1:我的草稿 2:我的点赞 3:我的收藏 4:我的购买 5:我的/他人主题
complex: {
type: 'number',
required: false
},
// 他人主题id,0为我的主题 1为他人主题
toUserId: {
type: 'number',
required: false
},
// 是否置顶 1:置顶 0:不筛选
sticky: {
type: 'number',
required: false
},
// 是否精华 1:精华 0:不筛选
essence: {
type: 'number',
required: false
}
}, (0, _defineProperty2.default)(_fields, "essence", {
type: 'array',
required: false
}), (0, _defineProperty2.default)(_fields, "categoryids", {
type: 'array',
required: false
}), (0, _defineProperty2.default)(_fields, "sort", {
type: 'number',
required: false
}), (0, _defineProperty2.default)(_fields, "attention", {
type: 'number',
required: false
}), (0, _defineProperty2.default)(_fields, "search", {
type: 'number',
required: false
}), _fields)
}
};
/**
* 描述:首页列表/热门内容
* 请求方式:GET
* @param {axios config} opt 请求配置信息
* @returns {promise}
*/
function readThreadList() {
return _readThreadList.apply(this, arguments);
}
function _readThreadList() {
_readThreadList = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
var opt,
_opt$params,
params,
_opt$data,
data,
others,
options,
result,
_args = arguments;
return _regenerator.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
opt = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
_context.prev = 1;
_opt$params = opt.params, params = _opt$params === void 0 ? {} : _opt$params, _opt$data = opt.data, data = _opt$data === void 0 ? {} : _opt$data, others = (0, _objectWithoutProperties2.default)(opt, _excluded);
options = _objectSpread(_objectSpread({
url: '/api/v3/thread.list',
// 请求地址
method: 'GET',
params: params,
data: data
}, others), {}, {
validateRules: validateRules
});
_context.next = 6;
return _example.default.dispatcher(options);
case 6:
result = _context.sent;
return _context.abrupt("return", result);
case 10:
_context.prev = 10;
_context.t0 = _context["catch"](1);
return _context.abrupt("return", (0, _handleError.handleError)(_context.t0));
case 13:
case "end":
return _context.stop();
}
}
}, _callee, null, [[1, 10]]);
}));
return _readThreadList.apply(this, arguments);
}