Skip to content

Commit a88bc5a

Browse files
author
shengyonggen
committed
Release 1.18.4
1 parent 4d7699d commit a88bc5a

File tree

8 files changed

+51
-21
lines changed

8 files changed

+51
-21
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 1.18.4(2022-12-7)
2+
1. 新增
3+
- 支持 `List` 列表元素非字符串类型
4+
15
## 1.18.3(2022-12-2)
26
1. 修复
37
- `ID-Mapping 3.0` 用户关联协议优化

dist/wechat/sensorsdata.cjs.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/wechat/sensorsdata.esm.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "sa-sdk-miniprogram",
3-
"version": "1.18.3",
3+
"version": "1.18.4",
44
"description": "sensorsdata miniprogram sdk",
55
"main": "/dist/wechat/sensorsdata.cjs.js",
66
"scripts": {

product/wechat/sensorsdata.es6.full.js

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -539,7 +539,7 @@ var IDENTITY_KEY = {
539539
LOGIN: '$identity_login_id'
540540
};
541541

542-
var LIB_VERSION = '1.18.3';
542+
var LIB_VERSION = '1.18.4';
543543
var LIB_NAME = 'MiniProgram';
544544

545545
/*
@@ -1050,9 +1050,9 @@ function formatDate(d) {
10501050

10511051
// 把日期格式全部转化成日期字符串
10521052
function searchObjDate(o) {
1053-
if (isObject(o)) {
1053+
if (isObject(o) || isArray(o)) {
10541054
each(o, function (a, b) {
1055-
if (isObject(a)) {
1055+
if (isObject(a) || isArray(a)) {
10561056
searchObjDate(o[b]);
10571057
} else {
10581058
if (isDate(a)) {
@@ -1152,14 +1152,28 @@ function strip_sa_properties(p) {
11521152
each(v, function (arrv) {
11531153
if (isString(arrv)) {
11541154
temp.push(arrv);
1155+
} else if (isUndefined(arrv)) {
1156+
temp.push('null');
11551157
} else {
1156-
log('您的数据-', v, '的数组里的值必须是字符串,已经将其删除');
1158+
try {
1159+
temp.push(JSON.stringify(arrv));
1160+
} catch (error) {
1161+
log('您的数据 - ' + k + ':' + v + ' - 的数组里的值有错误,已经将其删除');
1162+
}
11571163
}
11581164
});
11591165
p[k] = temp;
11601166
}
1161-
// 只能是字符串,数字,日期,布尔,数组
1162-
if (!(isString(v) || isNumber(v) || isDate(v) || isBoolean(v) || isArray(v))) {
1167+
//如果是多层结构对象,直接序列化为字符串
1168+
if (isObject(v)) {
1169+
try {
1170+
p[k] = JSON.stringify(v);
1171+
} catch (error) {
1172+
delete p[k];
1173+
log('您的数据 - ' + k + ':' + v + ' - 的数据值有错误,已经将其删除');
1174+
}
1175+
} else if (!(isString(v) || isNumber(v) || isDate(v) || isBoolean(v) || isArray(v))) {
1176+
// 只能是字符串,数字,日期,布尔,数组
11631177
log('您的数据 - ' + k + ':' + v + ' - 格式不满足要求,已经将其删除');
11641178
delete p[k];
11651179
}
@@ -2790,9 +2804,8 @@ function buildData(p, custom_monitor_prop) {
27902804

27912805
// 处理动态公共属性
27922806
parseSuperProperties(data.properties);
2793-
strip_sa_properties(data.properties);
2794-
27952807
searchObjDate(data);
2808+
strip_sa_properties(data.properties);
27962809
searchObjString(data);
27972810

27982811
return data;

product/wechat/sensorsdata.full.js

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -541,7 +541,7 @@ var IDENTITY_KEY = {
541541
LOGIN: '$identity_login_id'
542542
};
543543

544-
var LIB_VERSION = '1.18.3';
544+
var LIB_VERSION = '1.18.4';
545545
var LIB_NAME = 'MiniProgram';
546546

547547
/*
@@ -1052,9 +1052,9 @@ function formatDate(d) {
10521052

10531053
// 把日期格式全部转化成日期字符串
10541054
function searchObjDate(o) {
1055-
if (isObject(o)) {
1055+
if (isObject(o) || isArray(o)) {
10561056
each(o, function (a, b) {
1057-
if (isObject(a)) {
1057+
if (isObject(a) || isArray(a)) {
10581058
searchObjDate(o[b]);
10591059
} else {
10601060
if (isDate(a)) {
@@ -1154,14 +1154,28 @@ function strip_sa_properties(p) {
11541154
each(v, function (arrv) {
11551155
if (isString(arrv)) {
11561156
temp.push(arrv);
1157+
} else if (isUndefined(arrv)) {
1158+
temp.push('null');
11571159
} else {
1158-
log('您的数据-', v, '的数组里的值必须是字符串,已经将其删除');
1160+
try {
1161+
temp.push(JSON.stringify(arrv));
1162+
} catch (error) {
1163+
log('您的数据 - ' + k + ':' + v + ' - 的数组里的值有错误,已经将其删除');
1164+
}
11591165
}
11601166
});
11611167
p[k] = temp;
11621168
}
1163-
// 只能是字符串,数字,日期,布尔,数组
1164-
if (!(isString(v) || isNumber(v) || isDate(v) || isBoolean(v) || isArray(v))) {
1169+
//如果是多层结构对象,直接序列化为字符串
1170+
if (isObject(v)) {
1171+
try {
1172+
p[k] = JSON.stringify(v);
1173+
} catch (error) {
1174+
delete p[k];
1175+
log('您的数据 - ' + k + ':' + v + ' - 的数据值有错误,已经将其删除');
1176+
}
1177+
} else if (!(isString(v) || isNumber(v) || isDate(v) || isBoolean(v) || isArray(v))) {
1178+
// 只能是字符串,数字,日期,布尔,数组
11651179
log('您的数据 - ' + k + ':' + v + ' - 格式不满足要求,已经将其删除');
11661180
delete p[k];
11671181
}
@@ -2792,9 +2806,8 @@ function buildData(p, custom_monitor_prop) {
27922806

27932807
// 处理动态公共属性
27942808
parseSuperProperties(data.properties);
2795-
strip_sa_properties(data.properties);
2796-
27972809
searchObjDate(data);
2810+
strip_sa_properties(data.properties);
27982811
searchObjString(data);
27992812

28002813
return data;

sensorsdata.es6.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sensorsdata.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)