test time

test time

Áp dụng flipbook cho toàn bộ bài viết

Expectation:
Tất cả các bài viết khi đưa flipbook code vô đều có thể load ngoài FE

Plan chi tiết đã hoàn thiện

Tôi đã tìm thấy API getFlipbook(id) trong CmsService (dòng 326-328):

getFlipbook(id: number | string) {
  return this._http.get<any>(`${environment.apiUrl}/flipbooks/${id}`);
}

📋 Plan Implementation

Mục tiêu

Khi body content chứa shortcode

, hệ thống sẽ:

  1. Detect và parse shortcode để lấy ID
  2. Call API getFlipbook(4) để lấy PDF URL
  3. Render FlipbookViewerComponent với PDF URL đó

Các bước thực hiện

Step 1: Cập nhật MenuPageDetailComponent

File: src/app/main/share-component/menu-page/shared/menu-page-detail/menu-page-detail.component.ts

Thay đổi:

  1. Import FlipbookViewerModuleFlipbookViewerComponent
  2. Thêm property để lưu flipbook data:
    flipbookData: { id: number; pdfUrl: string; elementId: string } | null = null;
  3. Tạo method detectAndLoadFlipbook(body: string):
    • Parse shortcode pattern \[(dt_flipbook-(\d+))\]
    • Nếu tìm thấy, extract ID và call cmsService.getFlipbook(id)
    • Store response vào flipbookData
  4. Sử dụng ViewContainerRef để dynamic load FlipbookViewerComponent sau khi có PDF URL
  5. Update method applyArticleData() để call detectAndLoadFlipbook()

Step 2: Cập nhật Template

File: src/app/main/share-component/menu-page/shared/menu-page-detail/menu-page-detail.component.html

Thay đổi:

  • Thêm placeholder div để render flipbook viewer:
<!-- Flipbook placeholder - will be dynamically populated -->
<div id="flipbook-container" class="article__flipbook" *ngIf="flipbookData"></div>
<!-- Body content (without flipbook shortcode) -->
<div #articleBody class="article__body entry" [innerHTML]="cachedBodyContent"></div>

Step 3: Import Module

File: src/app/main/share-component/menu-page/menu-page.module.ts (hoặc module tương ứng)

EST: 3 hours


test time

Tiến Đức Trần

2 người theo dõi
Xem thêm bài viết của tác giả này

Bài viết liên quan

Khóa học: "Chăm sóc những gia đình Công giáo đổ vỡ hôn nhân"Hôn nhân - Gia đình
Khóa học: "Chăm sóc những gia đình Công giáo đổ vỡ hôn nhân"

Hôn nhân Công giáo là một bí tích. Chính tình yêu thành tín của Thiên Chúa nơi Đức Ki-tô là nền tảng cho sự trung tín và đặc tính bất khả phân ly của Bí Tích này. Tuy nhiên, đặc tính này có thể bị phá vỡ bởi nhiều lý do khác nhau, trong đó có những lý do

6 tháng trước
Nền tảng của hôn nhân gia đìnhHôn nhân - Gia đình
Nền tảng của hôn nhân gia đình

Trong khi ở một số nước tiến bộ người ta tìm cách thay đổi định nghĩa về hôn nhân và luật hóa hôn nhân đồng tính. Tuy nhiên cho đến nay Giáo Hội Công Giáo vẫn không chấp nhận hôn nhân đồng tính

7 tháng trước
Khóa học: "Sơ lược về Giáo luật Hôn nhân và Tiêu hôn"Hôn nhân - Gia đình
Khóa học: "Sơ lược về Giáo luật Hôn nhân và Tiêu hôn"

KHÓA HỌC “ SƠ LƯỢC VỀ GIÁO LUẬT HÔN NHÂN & TIÊU HÔN ” Mục vụ cho người ly dị tái hôn thường rơi vào ngõ cụt bởi câu Kinh Thánh: “Sự gì Thiên Chúa đã phối hợp, loài người không được phân ly” (Mc 10,9). Thế nhưng, theo Giáo luật, chỉ những kết ước hôn nhân

9 tháng trước

Các bài viết được quan tâm