// subpackages/detailsimg/detailsimg.js // import { models, db, _ } from '../../utils/cloudbase.js' import { getDB, getModels, getCommand, getTempFileURLs } from '../../utils/cloudbase.js' Page({ /** * 页面的初始数据 */ data: { itemlist: {}, datalist: [] }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { // 获取传递过来的数据 const itemStr = decodeURIComponent(options.item); const item = JSON.parse(itemStr); // 设置到页面数据中 this.setData({ itemlist: item }, () => { this.getdatalist() }); }, async getdatalist() { const models = await getModels() const { data } = await models.wx_details.list({ filter: { where: { file_manage_id: this.data.itemlist._id } }, pageSize: 50, // 分页大小,建议指定,如需设置为其它值,需要和 pageNumber 配合使用,两者同时指定才会生效 pageNumber: 1, // 第几页 getCount: true, // 开启用来获取总数 // envType: pre 体验环境, prod 正式环境 envType: "prod", }); // 返回查询到的数据列表 records 和 总数 total let records = data.records || [] // 如果数据库存的是 fileID 或 cloudPath,转换成临时链接 const fileIDs = records.map(item => item.url).filter(Boolean) let tempFiles = [] if (fileIDs.length > 0) { tempFiles = await getTempFileURLs(fileIDs) } // 添加可渲染字段 records = records.map((item, index) => ({ ...item, urlTemp: tempFiles[index] ? tempFiles[index].tempFileURL : '' })) this.setData({ datalist: records }) console.log(records, 'data.records'); }, })