Просмотр исходного кода

using map not forEach to create a new array

kaori 4 лет назад
Родитель
Сommit
af328700f9
1 измененных файлов с 3 добавлено и 7 удалено
  1. 3 7
      packages/app/src/server/routes/apiv3/in-app-notification.ts

+ 3 - 7
packages/app/src/server/routes/apiv3/in-app-notification.ts

@@ -36,15 +36,12 @@ module.exports = (crowi) => {
       return activities.map(({ user }) => user).filter((user, i, self) => self.indexOf(user) === i);
     };
 
-    let docObj: IInAppNotification;
-    const serializedDocs: Array<IInAppNotification> = [];
-
-    paginationResult.docs.forEach((doc, i) => {
+    const serializedDocs: Array<IInAppNotification> = paginationResult.docs.map((doc) => {
       if (doc.user != null && doc.user instanceof User) {
         doc.user = serializeUserSecurely(doc.user);
       }
       // To add a new property into mongoose doc, need to change the format of doc to an object
-      docObj = doc.toObject();
+      const docObj: IInAppNotification = doc.toObject();
       const actionUsersNew = getActionUsersFromActivities(doc.activities);
 
       const serializedActionUsers = actionUsersNew.map((actionUser) => {
@@ -52,8 +49,7 @@ module.exports = (crowi) => {
       });
 
       docObj.actionUsers = serializedActionUsers;
-
-      serializedDocs.push(docObj);
+      return docObj;
     });
 
     const serializedPaginationResult = {