Commit c7d0b174 by liang ce

修改首页动态

parent d0041ee4
...@@ -10,15 +10,15 @@ ...@@ -10,15 +10,15 @@
<text a:if="{{item.traceTime !== '1970-03-01 00:00:00'}}" class="iconfont iconicon_top1"></text> <text a:if="{{item.traceTime !== '1970-03-01 00:00:00'}}" class="iconfont iconicon_top1"></text>
</view> </view>
</view> </view>
<block a:for="{{item.meetingLogDataList}}" a:for-item="dynamicItem"> <block a:for="{{item.meetingLogDataList.meetingLogDataList.slice(0,2)}}" a:for-item="dynamicItem">
<view class="userDynamic"> <view class="userDynamic">
<view class="dynamicTime"> <view class="dynamicTime">
<text>{{dynamicItem.creatorInfo.username}}更新了{{dynamicItem.category == 2 ? '文件' : '任务'}}</text> <text>{{dynamicItem.creatorInfo.username}}更新了{{dynamicItem.category == 2 ? '文件' : '任务'}}</text>
<text>{{createTime}}</text> <text>{{createTime}}</text>
</view> </view>
<file-list a:if="{{dynamicItem.category === '2'}}" fileView="{{dynamicItem}}" isCanEdit="{{false}}"/> <file-list a:if="{{dynamicItem.category === '2'}}" fileView="{{dynamicItem.meetingLogResource}}" isCanEdit="{{false}}"/>
<view class="dynamicFile" a:if="{{dynamicItem.category === '3'}}"> <view class="dynamicFile" a:if="{{dynamicItem.category === '3'}}">
<task-list onChangeTaskStatusOnList="onChangeTaskStatusOnList" taskList="{{[dynamicItem]}}" isCanEdit="{{false}}"/> <task-list onChangeTaskStatusOnList="onChangeTaskStatusOnList" taskList="{{[dynamicItem.meetingLogResource]}}" isCanEdit="{{false}}"/>
</view> </view>
</view> </view>
</block> </block>
......
...@@ -3,7 +3,7 @@ import { ...@@ -3,7 +3,7 @@ import {
meetingCollection, meetingCollection,
updateMeetingTask updateMeetingTask
} from "../../api/request"; } from "../../api/request";
import { dealFileTime } from "../../utils/utils"; import { dealFileTime, uniqueObject } from "../../utils/utils";
Component({ Component({
mixins: [], mixins: [],
data: { data: {
...@@ -37,43 +37,43 @@ Component({ ...@@ -37,43 +37,43 @@ Component({
// 第一层日程数据处理 // 第一层日程数据处理
if (res.data.data) { if (res.data.data) {
let dynamicList = res.data.data.records.map((item, index) => { let dynamicList = res.data.data.records.map((item, index) => {
if (item.creatorInfo) {
item.creatorInfo = JSON.parse(item.creatorInfo);
}
// 第二层日程下的动态数据处理 // 第二层日程下的动态数据处理
let meetingLogDataList = item.meetingLogDataList.map( let meetingLogDataList = {};
(item2, index2) => { let meetingLogDataListArr = [];
if (item2.category === "2") {
// 第三层处理动态下的文件或者任务数据 for (let i = 0; i < item.meetingLogDataList.length; i++) {
let meetingLogResource = item2.meetingLogResource; let itemData = item.meetingLogDataList[i].meetingLogResource;
meetingLogResource.fileInfos = !meetingLogResource.fileInfos if (itemData) {
? "" if (itemData.taskInfos || itemData.taskInfos) {
: JSON.parse(meetingLogResource.fileInfos); if (itemData.creatorInfo) {
meetingLogResource.creatorInfo = !meetingLogResource.creatorInfo itemData.creatorInfo = JSON.parse(itemData.creatorInfo);
? "" }
: JSON.parse(meetingLogResource.creatorInfo); if (itemData.fileInfos) {
meetingLogResource.category = "2"; itemData.fileInfos = JSON.parse(itemData.fileInfos);
return meetingLogResource; }
} else if (item2.category === "3") { if (itemData.taskInfos) {
let meetingLogResource = { itemData.taskInfos = JSON.parse(itemData.taskInfos);
category: "3", }
groupId: item2.groupId, if (itemData.acceptorInfo) {
scheduleId: item2.scheduleId, itemData.acceptorInfo = JSON.parse(itemData.acceptorInfo);
id: item2.meetingLogResource.id, }
acceptorInfo: item2.meetingLogResource.acceptorInfo meetingLogDataList[item.meetingLogDataList[i].resourceId] =
? JSON.parse(item2.meetingLogResource.acceptorInfo) item.meetingLogDataList[i];
: "",
taskInfos: item2.meetingLogResource.taskInfos
? JSON.parse(item2.meetingLogResource.taskInfos)
: "",
taskStatus: item2.meetingLogResource.taskStatus
};
return meetingLogResource;
} }
} }
); }
for (let item in meetingLogDataList) {
meetingLogDataListArr.push(meetingLogDataList[item]);
}
item.meetingLogDataList = meetingLogDataListArr;
return { return {
scheduleId: item.scheduleId, scheduleId: item.scheduleId,
title: item.title, title: item.title,
traceTime: item.traceTime, traceTime: item.traceTime,
meetingLogDataList: meetingLogDataList meetingLogDataList: item
}; };
}); });
if (current === 1) { if (current === 1) {
......
...@@ -2,104 +2,93 @@ ...@@ -2,104 +2,93 @@
<view>2020年3月</view> <view>2020年3月</view>
<view onTap="changesidebar">icon</view> <view onTap="changesidebar">icon</view>
</view> </view>
<view class="index"> <scroll-view class="indexScrollView" scroll-y="{{true}}" style="background: #FFFFFF" lower-threshold="1000" onScrollToLower="lower" scroll-into-view="{{thisDay}}">
<view a:if="{{true}}"> <block a:for="{{scheduleList}}" a:for-item="scheduleYearList">
<scroll-view class="indexScrollView" a:if="{{todayStr !== ''}}" scroll-y="{{true}}" lower-threshold="1000" onScrollToLower="lower" scroll-into-view="{{todayStr}}"> <block a:for="{{scheduleYearList}}">
<block a:for="{{scheduleList}}" a:for-item="scheduleYearList"> <block a:if="{{item.type == 'year'}}">
<block a:for="{{scheduleYearList}}"> <view class="month">
<block a:if="{{item.type == 'year'}}"> {{item.value}}年
<view class="month"> </view>
{{item.value}}年 </block>
</view> <block a:elif="{{item.type == 'month'}}">
</block> <view class="month">
<block a:elif="{{item.type == 'month'}}"> {{item.value}}月
<view class="month"> </view>
{{item.value}}月 </block>
</view> <block a:elif="{{item.type == 'week'}}">
</block> <view class="week" id="{{item.dayStr}}">
<block a:elif="{{item.type == 'week'}}"> <view class="manyWeeks">
<view class="week" id="{{item.dayStr}}"> {{item.value}}
<view class="manyWeeks"> </view>
{{item.value}} </view>
</view> </block>
<block a:elif="{{item.type == 'day'}}">
<view class="date">
<view class="dateTime {{item.isThisDay}}">
<view>
{{item.value.week}}
</view> </view>
</block> <text>{{item.value.day}}</text>
<block a:elif="{{item.type == 'day'}}"> </view>
<view class="date"> <view class="dataSchedule">
<view class="dateTime {{item.isThisDay}}"> <view a:for="{{item.value.value}}" a:for-item="item2" data-item="{{item2}}" class="{{ item2.isBeOverdue ? 'overdue' : item2.confirmAttendance === 0 ? 'cancel' : '' }}" onTap="nextDetail">
<view> <view class="dataScheduleName">
{{item.value.week}} <text>{{item2.title}}{{item2.isfirstDayOrEndDay ? `(第${item2.isFewDays}天,共${item2.duration}天)` : '' }}</text>
</view>
<text>{{item.value.day}}</text>
</view> </view>
<view class="dataSchedule"> <view class="dataScheduleTime">
<view a:for="{{item.value.value}}" a:for-item="item2" data-item="{{item2}}" class="{{ item2.isBeOverdue ? 'overdue' : item2.confirmAttendance === 0 ? 'cancel' : '' }}" onTap="nextDetail"> <text a:if="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '0'}}">{{item2.thisDayStartTime}}</text>
<view class="dataScheduleName"> <text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '1'}}">全天</text>
<text>{{item2.title}}{{item2.isfirstDayOrEndDay ? `(第${item2.isFewDays}天,共${item2.duration}天)` : '' }}</text> <text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '2'}}">直到{{item2.thisDayEndTime}}</text>
</view> <text a:else>{{item2.thisDayStartTime}} - {{item2.thisDayEndTime}}</text>
<view class="dataScheduleTime">
<text a:if="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '0'}}">{{item2.thisDayStartTime}}</text>
<text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '1'}}">全天</text>
<text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '2'}}">直到{{item2.thisDayEndTime}}</text>
<text a:else>{{item2.thisDayStartTime}} - {{item2.thisDayEndTime}}</text>
</view>
</view>
</view> </view>
</view> </view>
</block> </view>
<block a:elif="{{item.type == 'today'}}"> </view>
<view class="date" id="{{item.value.dateStr}}"> </block>
<view class="dateTime {{item.isThisDay}}"> <block a:elif="{{item.type == 'today'}}">
<view> <view class="date" id="{{item.value.dateStr}}">
今天 <view class="dateTime {{item.isThisDay}}">
</view> <view>
<text>{{item.value.day}}</text> 今天
</view>
<view class="dataSchedule">
<!--<view class="thisDayLine thisDayHavaMeeting" style="margin-bottom: 7.5rpx"></view> -->
<view a:for="{{item.value.value}}" a:for-item="item2" data-item="{{item2}}" class="{{ item2.isBeOverdue ? 'overdue' : item2.confirmAttendance === 0 ? 'cancel' : '' }}" onTap="nextDetail">
<view class="dataScheduleName">
<text>{{item2.title}}{{item2.isfirstDayOrEndDay ? `(第${item2.isFewDays}天,共${item2.duration}天)` : '' }}</text>
</view>
<view class="dataScheduleTime">
<text a:if="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '0'}}">{{item2.thisDayStartTime}}</text>
<text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '1'}}">全天</text>
<text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '2'}}">直到{{item2.thisDayEndTime}}</text>
<text a:else>{{item2.thisDayStartTime}} - {{item2.thisDayEndTime}}</text>
</view>
</view>
</view>
</view> </view>
</block> <text>{{item.value.day}}</text>
<block a:elif="{{item.type == 'thisDay'}}"> </view>
<view class="date" id="{{item.value.dateStr}}"> <view class="dataSchedule">
<view class="dateTime thisDay"> <!--<view class="thisDayLine thisDayHavaMeeting" style="margin-bottom: 7.5rpx"></view> -->
<view> <view a:for="{{item.value.value}}" a:for-item="item2" data-item="{{item2}}" class="{{ item2.isBeOverdue ? 'overdue' : item2.confirmAttendance === 0 ? 'cancel' : '' }}" onTap="nextDetail">
{{item.value.week}} <view class="dataScheduleName">
</view> <text>{{item2.title}}{{item2.isfirstDayOrEndDay ? `(第${item2.isFewDays}天,共${item2.duration}天)` : '' }}</text>
<text>{{item.value.day}}</text>
</view> </view>
<view class="NoSchedule"> <view class="dataScheduleTime">
<view> <text a:if="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '0'}}">{{item2.thisDayStartTime}}</text>
<text>暂无日程安排,</text> <text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '1'}}">全天</text>
<text onTap="nextPage">创建日程</text> <text a:elif="{{item2.isfirstDayOrEndDay && item2.isfirstDayOrEndDay === '2'}}">直到{{item2.thisDayEndTime}}</text>
</view> <text a:else>{{item2.thisDayStartTime}} - {{item2.thisDayEndTime}}</text>
<!--<view class="thisDayLine"></view> -->
</view> </view>
</view> </view>
</block> </view>
</block> </view>
</block> </block>
</scroll-view> <block a:elif="{{item.type == 'thisDay'}}">
</view> <view class="date" id="{{item.value.dateStr}}">
<view class="startPage" a:else> <view class="dateTime thisDay">
<image mode="scaleToFill" src="../../assests/startPage.png"/> <view>
<view class="startText"> {{item.value.week}}
<text class="text1">开会有益</text> </view>
<text>快乐工作</text> <text>{{item.value.day}}</text>
</view> </view>
</view> <view class="NoSchedule">
</view> <view>
<text>暂无日程安排,</text>
<text onTap="nextPage">创建日程</text>
</view>
<!--<view class="thisDayLine"></view> -->
</view>
</view>
</block>
</block>
</block>
</scroll-view>
<popup show="{{show}}" onClose="closePop" position="left"> <popup show="{{show}}" onClose="closePop" position="left">
<view class="sidebarContent" catchTap="preventSort"> <view class="sidebarContent" catchTap="preventSort">
<view class="sidebarLogo"> <view class="sidebarLogo">
......
...@@ -37,11 +37,10 @@ create.Component({ ...@@ -37,11 +37,10 @@ create.Component({
this.update(); this.update();
this.getDate(); this.getDate();
} }
}, },
didUnmount() { }, didUnmount() {},
methods: { methods: {
getDate: throttle(function (e) { getDate: throttle(function(e) {
let data = { let data = {
startTime: "2020-01-01 00:00:00", startTime: "2020-01-01 00:00:00",
endTime: "2025-12-30 23:59:59" endTime: "2025-12-30 23:59:59"
...@@ -69,7 +68,6 @@ create.Component({ ...@@ -69,7 +68,6 @@ create.Component({
todayStr: finalDate.toLocaleDateString(), todayStr: finalDate.toLocaleDateString(),
thisYear: year, thisYear: year,
maxYear: year, maxYear: year,
canClick: true,
startPageOnShow: true, startPageOnShow: true,
isFirstLoad: false isFirstLoad: false
}); });
...@@ -77,7 +75,7 @@ create.Component({ ...@@ -77,7 +75,7 @@ create.Component({
); );
}); });
}, 1000), }, 1000),
nextDetail: throttle(function (e) { nextDetail: throttle(function(e) {
let item = e.target.dataset.item; let item = e.target.dataset.item;
dd.navigateTo({ dd.navigateTo({
url: `./../meetingDetail/meetingDetail?scheduleItem=${JSON.stringify( url: `./../meetingDetail/meetingDetail?scheduleItem=${JSON.stringify(
...@@ -129,15 +127,25 @@ create.Component({ ...@@ -129,15 +127,25 @@ create.Component({
// TO DO 判断所获取的时间区间 // TO DO 判断所获取的时间区间
// 将会议的年,月,日拆分,时分拆分,生成rrules规则 // 将会议的年,月,日拆分,时分拆分,生成rrules规则
let initialTime = item.initialTime.split("-"); // let initialTime = item.initialTime.split("-"); //
let initialTimeDate = new Date(parseInt(initialTime[0]), parseInt(initialTime[1]) - 1, parseInt(initialTime[2])); let initialTimeDate = new Date(
initialTimeDate.setDate(initialTimeDate.getDate() - 1) parseInt(initialTime[0]),
console.log(initialTimeDate.toLocaleDateString()) parseInt(initialTime[1]) - 1,
let initialTimeDateyear = initialTimeDate.getFullYear() parseInt(initialTime[2])
let initialTimeDatemonth = initialTimeDate.getMonth() + 1 < 10 ? '0' + (initialTimeDate.getMonth() + 1) : initialTimeDate.getMonth() + 1 );
let initialTimeDateday = initialTimeDate.getDate() < 10 ? '0' + initialTimeDate.getDate() : initialTimeDate.getDate() initialTimeDate.setDate(initialTimeDate.getDate() - 1);
console.log(initialTimeDate.toLocaleDateString());
let initialTimeDateyear = initialTimeDate.getFullYear();
let initialTimeDatemonth =
initialTimeDate.getMonth() + 1 < 10
? "0" + (initialTimeDate.getMonth() + 1)
: initialTimeDate.getMonth() + 1;
let initialTimeDateday =
initialTimeDate.getDate() < 10
? "0" + initialTimeDate.getDate()
: initialTimeDate.getDate();
let startTimeList = item.startTime.split(":"); let startTimeList = item.startTime.split(":");
let DTSTART = `${initialTimeDateyear}${initialTimeDatemonth}${initialTimeDateday}T${startTimeList[0]}${startTimeList[1]}00Z`; let DTSTART = `${initialTimeDateyear}${initialTimeDatemonth}${initialTimeDateday}T${startTimeList[0]}${startTimeList[1]}00Z`;
console.log(DTSTART) console.log(DTSTART);
let rule = RRule.fromString( let rule = RRule.fromString(
`${item.recurrenceModel.recurrenceRule};DTSTART=${DTSTART}` `${item.recurrenceModel.recurrenceRule};DTSTART=${DTSTART}`
); );
...@@ -192,8 +200,8 @@ create.Component({ ...@@ -192,8 +200,8 @@ create.Component({
item.recurrenceModel.startTime; item.recurrenceModel.startTime;
let endTime = new Date( let endTime = new Date(
getFormatDate(item2, "yyyyMMdd") + getFormatDate(item2, "yyyyMMdd") +
" " + " " +
item.recurrenceModel.startTime item.recurrenceModel.startTime
); );
endTime.setMinutes( endTime.setMinutes(
endTime.getMinutes() + item.recurrenceModel.duration endTime.getMinutes() + item.recurrenceModel.duration
...@@ -228,7 +236,7 @@ create.Component({ ...@@ -228,7 +236,7 @@ create.Component({
); );
} }
}); });
scheduleMap.forEach(function (value, key, map) { scheduleMap.forEach(function(value, key, map) {
scheduleList.push(value); scheduleList.push(value);
}); });
return scheduleList; return scheduleList;
...@@ -310,9 +318,9 @@ create.Component({ ...@@ -310,9 +318,9 @@ create.Component({
thisDayEndTime: AllScheduleList[y].endTime.slice(11, 16), thisDayEndTime: AllScheduleList[y].endTime.slice(11, 16),
isBeOverdue: isBeOverdue:
new Date().getTime() > new Date().getTime() >
new Date( new Date(
AllScheduleList[y].endTime.replace(/-/g, "/") AllScheduleList[y].endTime.replace(/-/g, "/")
).getTime() ).getTime()
? true ? true
: false : false
}); });
...@@ -347,9 +355,9 @@ create.Component({ ...@@ -347,9 +355,9 @@ create.Component({
duration: count + 1, duration: count + 1,
isBeOverdue: isBeOverdue:
new Date().getTime() > new Date().getTime() >
new Date( new Date(
AllScheduleList[y].endTime.replace(/-/g, "/") AllScheduleList[y].endTime.replace(/-/g, "/")
).getTime() ).getTime()
? true ? true
: false : false
}); });
...@@ -366,7 +374,7 @@ create.Component({ ...@@ -366,7 +374,7 @@ create.Component({
value: year value: year
}); });
let thisDay = new Date().toLocaleDateString(); let thisDay = new Date().toLocaleDateString();
DateMap.forEach(function (value, key, map) { DateMap.forEach(function(value, key, map) {
if ( if (
new Date(key).getDay() === 0 && new Date(key).getDay() === 0 &&
that.count( that.count(
...@@ -392,7 +400,7 @@ create.Component({ ...@@ -392,7 +400,7 @@ create.Component({
type: "week", type: "week",
value: `第${listWeek}周,${rangeMonth1 + 1}${rangeDay1}日 - ${ value: `第${listWeek}周,${rangeMonth1 + 1}${rangeDay1}日 - ${
rangeMonth2 == rangeMonth1 ? "" : rangeMonth2 + 1 + "月" rangeMonth2 == rangeMonth1 ? "" : rangeMonth2 + 1 + "月"
}${rangeDay2}日`, }${rangeDay2}日`,
dayStr: key dayStr: key
}); });
} }
...@@ -408,7 +416,7 @@ create.Component({ ...@@ -408,7 +416,7 @@ create.Component({
type: "week", type: "week",
value: `第${listWeek}周,${rangeMonth1 + 1}${rangeDay1}日 - ${ value: `第${listWeek}周,${rangeMonth1 + 1}${rangeDay1}日 - ${
rangeMonth2 == rangeMonth1 ? "" : rangeMonth2 + 1 + "月" rangeMonth2 == rangeMonth1 ? "" : rangeMonth2 + 1 + "月"
}${rangeDay2}日`, }${rangeDay2}日`,
dayStr: key dayStr: key
}); });
} }
...@@ -430,7 +438,7 @@ create.Component({ ...@@ -430,7 +438,7 @@ create.Component({
type: "week", type: "week",
value: `第${listWeek}周,${rangeMonth1 + 1}${rangeDay1}日 - ${ value: `第${listWeek}周,${rangeMonth1 + 1}${rangeDay1}日 - ${
rangeMonth2 == rangeMonth1 ? "" : rangeMonth2 + 1 + "月" rangeMonth2 == rangeMonth1 ? "" : rangeMonth2 + 1 + "月"
}${rangeDay2}日`, }${rangeDay2}日`,
dayStr: key dayStr: key
}); });
} }
......
...@@ -6,7 +6,9 @@ Component({ ...@@ -6,7 +6,9 @@ Component({
props: { props: {
isCanEdit: true isCanEdit: true
}, },
didMount() {}, didMount() {
console.log(this.props);
},
didUpdate() { didUpdate() {
if (this.props.taskList.id === 108) { if (this.props.taskList.id === 108) {
console.log(this.props); console.log(this.props);
......
...@@ -10,8 +10,7 @@ ...@@ -10,8 +10,7 @@
<view onTap="changeTabBar" data-tabbar='0'> <view onTap="changeTabBar" data-tabbar='0'>
<view class="tabBarView {{tabBarIndex === '0' ? 'ischooseTabBar' : ''}}"> <view class="tabBarView {{tabBarIndex === '0' ? 'ischooseTabBar' : ''}}">
<text class="iconfont iconicon_dynamic"></text> <text class="iconfont iconicon_dynamic"></text>
<text>动态{{$data.indexNeedUpdate}} <text>动态</text>
</text>
</view> </view>
</view> </view>
<view onTap="changeTabBar" data-tabbar='1'> <view onTap="changeTabBar" data-tabbar='1'>
......
...@@ -3,13 +3,14 @@ import create from "dd-store"; ...@@ -3,13 +3,14 @@ import create from "dd-store";
create.Page({ create.Page({
data: { data: {
tabBarIndex: "0", tabBarIndex: "0",
$data: null $data: null,
},
onLoad() {
}, },
onLoad() { },
onShow() { onShow() {
setTimeout(res => { setTimeout(res => {
this.update(); this.update();
}, 100) }, 100);
}, },
// 修改tabBar // 修改tabBar
changeTabBar(e) { changeTabBar(e) {
......
...@@ -14,13 +14,13 @@ export function throttle(fn, gapTime) { ...@@ -14,13 +14,13 @@ export function throttle(fn, gapTime) {
} }
export function debounce(fn, delay) { export function debounce(fn, delay) {
let timeout = null; let timeout = null;
return function () { return function() {
clearTimeout(timeout); clearTimeout(timeout);
timeout = setTimeout(() => { timeout = setTimeout(() => {
fn.apply(this, arguments); fn.apply(this, arguments);
}, delay); }, delay);
}; };
} }
// 判断时间 刚刚 五分钟以内 十分钟以内 正常时间年月日 // 判断时间 刚刚 五分钟以内 十分钟以内 正常时间年月日
...@@ -141,3 +141,60 @@ export function getCurrentMonthLast(date) { ...@@ -141,3 +141,60 @@ export function getCurrentMonthLast(date) {
} }
return date.getFullYear() + "-" + month + "-" + day; return date.getFullYear() + "-" + month + "-" + day;
} }
// 对象数组去重
export function uniqueObject(arr) {
//存放的是字符串形式的数组。
var tempArr = [];
//将数组对象转成数组字符串。
var newStr = arrToString(arr);
newStr.sort();
//先放置第一个
var temp = newStr[0];
tempArr.push(temp);
// 数组去重
for (var i = 1; i < newStr.length; i++) {
if (newStr[i] !== temp) {
temp = newStr[i]; //放置到集合里面。
tempArr.push(newStr[i]);
}
}
//上面,集合还是字符串形式的数组,需要转换成json对象的形式。
var newArr = [];
// 新数组字符串转成数组对象
for (var i = 0; i < tempArr.length; i++) {
newArr.push(JSON.parse(tempArr[i]));
}
return newArr;
}
function arrToString(arr) {
var newArr = [];
if (arr.length !== 0) {
for (var i = 0; i < arr.length; i++) {
//对每一个对象数据进行处理。
//将每一个对象里面的属性key 进行重新排序,变成新的对象。
var thisObj = sortObject(arr[i]);
//将json对象,转换成字符串
var thisStr = JSON.stringify(thisObj);
// 去除空格及\t空白字符
thisStr = thisStr.replace(/(\s|[\\t])/g, "");
//里面放置字符串
newArr.push(thisStr);
}
}
return newArr;
}
function sortObject(obj) {
var keyArr = [];
for (var item in obj) {
//把所有的key放置在一个数组里面。
keyArr.push(item);
}
keyArr.sort(); //排序,按照字符进行排序。
var newObj = {}; //还是json对象
for (var i = 0; i < keyArr.length; i++) {
newObj[keyArr[i]] = obj[keyArr[i]];
}
//处理成 键=值的数组形式。
//console.log("值是:"+JSON.stringify(newObj));
return newObj;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment