Skip to content

Commit 778e6ce

Browse files
authored
Update toString.js
option中包含多个function的情况
1 parent 9fc5b29 commit 778e6ce

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/util/toString.js

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
export default function toString(obj) {
2-
return JSON.stringify(obj, function(key, val) {
3-
if (typeof val === 'function') {
4-
return `~--demo--~${val}~--demo--~`;
5-
}
6-
return val;
7-
}).replace('\"~--demo--~', '').replace('~--demo--~\"', '').replace(/\\n/g, '');
2+
let result = JSON.stringify(obj, function(key, val) {
3+
if (typeof val === 'function') {
4+
return `~--demo--~${val}~--demo--~`;
5+
}
6+
return val;
7+
});
8+
9+
do {
10+
result = result.replace('\"~--demo--~', '').replace('~--demo--~\"', '').replace(/\\n/g, '').replace(/\\\"/g,"\"");//最后一个replace将release模式中莫名生成的\"转换成"
11+
} while (result.indexOf('~--demo--~') >= 0);
12+
return result;
813
}

0 commit comments

Comments
 (0)