export default async function ({ event, data }) { const result = await app.cloud.callModel({ name: 'user_h4la7ee', methodName: 'wedaGetRecords', params: { "where": [ { "key": "openid", "rel": "eq", "val": app.dataset.state.openid } ] }, // 方法入参 }); } 在查询出来的数据中,有一个字段列名称是:f_tel ,我要求f_tel中去重显示 出来,然后现将这些唯一的f_tel的数据存到一个表sheet_tel中
时间: 2023-07-19 18:30:05 浏览: 49
你可以使用 `reduce` 和 `Set` 对象对 `f_tel` 字段进行去重,并将结果存储到 `sheet_tel` 表中。以下是修改后的代码:
```javascript
export default async function ({ event, data }) {
const result = await app.cloud.callModel({
name: 'user_h4la7ee',
methodName: 'wedaGetRecords',
params: {
"where": [
{
"key": "openid",
"rel": "eq",
"val": app.dataset.state.openid
}
]
}, // 方法入参
});
const fTelSet = new Set();
const fTelUnique = result.reduce((acc, curr) => {
if (!fTelSet.has(curr.f_tel)) {
fTelSet.add(curr.f_tel);
acc.push(curr.f_tel);
}
return acc;
}, []);
const sheetTel = app.dataset.sheet('sheet_tel');
for (const fTel of fTelUnique) {
await sheetTel.appendRow([fTel]);
}
}
```
在这段代码中,我们先使用之前提到的方法对 `f_tel` 字段进行去重,得到结果存储在 `fTelUnique` 数组中。然后,我们使用 `app.dataset.sheet()` 方法获取名为 `sheet_tel` 的表,并使用 `appendRow()` 方法将每个去重后的 `f_tel` 值添加到该表的新行中。
需要注意的是,`appendRow()` 方法返回的是一个Promise对象,因此需要使用 `await` 等待操作完成。
希望这可以帮助到你!
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)