cloudfunctions/SegmentPortraitPic/node_modules/@cloudbase/database/dist/commonjs/util.js
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const constant_1 = require("./constant");
const index_1 = require("./geo/index");
class Util {
}
exports.Util = Util;
Util.formatResDocumentData = (documents) => {
return documents.map(document => {
return Util.formatField(document);
});
};
Util.formatField = document => {
const keys = Object.keys(document);
let protoField = {};
if (Array.isArray(document)) {
protoField = [];
}
keys.forEach(key => {
const item = document[key];
const type = Util.whichType(item);
let realValue;
switch (type) {
case constant_1.FieldType.GeoPoint:
realValue = new index_1.Point(item.coordinates[0], item.coordinates[1]);
break;
case constant_1.FieldType.GeoLineString:
realValue = new index_1.LineString(item.coordinates.map(point => new index_1.Point(point[0], point[1])));
break;
case constant_1.FieldType.GeoPolygon:
realValue = new index_1.Polygon(item.coordinates.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))));
break;
case constant_1.FieldType.GeoMultiPoint:
realValue = new index_1.MultiPoint(item.coordinates.map(point => new index_1.Point(point[0], point[1])));
break;
case constant_1.FieldType.GeoMultiLineString:
realValue = new index_1.MultiLineString(item.coordinates.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))));
break;
case constant_1.FieldType.GeoMultiPolygon:
realValue = new index_1.MultiPolygon(item.coordinates.map(polygon => new index_1.Polygon(polygon.map(line => new index_1.LineString(line.map(([lng, lat]) => new index_1.Point(lng, lat)))))));
break;
case constant_1.FieldType.Date:
realValue = item;
break;
case constant_1.FieldType.Object:
case constant_1.FieldType.Array:
realValue = Util.formatField(item);
break;
case constant_1.FieldType.ServerDate:
realValue = new Date(item.$date);
break;
default:
realValue = item;
}
if (Array.isArray(protoField)) {
protoField.push(realValue);
}
else {
protoField[key] = realValue;
}
后面还有 41 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
