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

refs #80335: Detach page control from page container
- Retry: Detach toggleBookmark from pageContainer

NEEDLEMAN3\tatsu 4 лет назад
Родитель
Сommit
640ecf0fbd

+ 0 - 6
packages/app/src/client/services/PageContainer.js

@@ -328,12 +328,6 @@ export default class PageContainer extends Container {
     });
   }
 
-  async toggleBookmark(pageId = this.state.pageId, isBookmarked = this.state.isBookmarked, updateStatus = this.retrieveBookmarkInfo) {
-    const bool = !isBookmarked;
-    await this.appContainer.apiv3Put('/bookmarks', { pageId, bool });
-    return updateStatus();
-  }
-
   async checkAndUpdateImageUrlCached(users) {
     const noImageCacheUsers = users.filter((user) => { return user.imageUrlCached == null });
     if (noImageCacheUsers.length === 0) {

+ 4 - 1
packages/app/src/components/BookmarkButton.jsx

@@ -20,13 +20,16 @@ class BookmarkButton extends React.Component {
   async handleClick() {
     const { appContainer, pageContainer } = this.props;
     const { isGuestUser } = appContainer;
+    const { pageId, isBookmarked } = pageContainer.state;
 
     if (isGuestUser) {
       return;
     }
 
     try {
-      pageContainer.toggleBookmark();
+      const bool = !isBookmarked;
+      await this.appContainer.apiv3Put('/bookmarks', { pageId, bool });
+      pageContainer.retrieveBookmarkInfo();
     }
     catch (err) {
       toastError(err);