1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| /**
| * TANGiMING 2018-3-21
| * 用于单文件组件在被重新激活或被打开时,遗留数据可能会造成污染的问题;
| * 可以将data中指定的数据进行初始化;
| * 尽量在单文件组件被冻结或被销毁时使用
| */
| const initData = function(arr, self) {
| let arrLength = arr.length;
| for (let i = 0; i < arrLength; i++) {
| let item = arr[i];
| if (typeof self[item] === 'object' && !isNaN(self[item].length)) {
| self[item] = [];
| continue;
| }
| switch (typeof self[item]) {
| case 'string':
| self[item] = '';
| break;
| case 'number':
| self[item] = null;
| break;
| case 'object':
| self[item] = {};
| break;
| case 'undefined':
| console.error(`${item}不是正确的data属性!`);
| break;
| }
| }
| };
| export default initData;
|
|