Skip to main content
Bạn chạy các lệnh dưới đây từ thư mục gốc application, nơi có package.json. Frontend nằm trong resident-miniapp; script ở thư mục gốc khởi động Vite với cấu hình của frontend này.

Chọn đúng chế độ

Xem giao diện bằng dữ liệu mẫu

Mở http://127.0.0.1:5174/?demo=1. Cấu hình Vite dùng cổng 5174 và strictPort: true; nếu cổng đang bận, server không tự chuyển sang cổng khác.

Chạy preview nối backend

1

Chuẩn bị backend

Làm theo cấu hình môi trường, chuẩn bị PostgreSQL local rồi chạy yarn dev ở terminal thứ nhất. Backend cần chạy tại cổng 3000 theo đích proxy hiện có.
2

Khởi động frontend

Chạy yarn miniapp:dev ở terminal thứ hai. Mở http://127.0.0.1:5174 và chọn Tiếp tục với Zalo. Trong DEV, frontend dùng định danh preview và không gọi luồng xác minh Zalo.
3

Gửi thông tin căn hộ

Chọn Tòa nhà, nhập Mã căn hộ, chọn Quan hệ với căn hộ, rồi Gửi yêu cầu. Căn hộ phải tồn tại và đang hoạt động trong tòa nhà được chọn.
4

Duyệt rồi kiểm tra portal

Mở admin và thực hiện Duyệt truy cập Mini App. Quay lại frontend, chọn Kiểm tra trạng thái. Kiểm tra Bảng kê, Yêu cầu và Cá nhân theo căn hộ được duyệt.
Khi VITE_TAHO_API_URL để trống, frontend gửi đường dẫn /api/... tới Vite; Vite proxy sang http://127.0.0.1:3000. Nếu đặt biến này, frontend dùng URL đó làm tiền tố API. Xem mẫu env.
Docs local cũng thường dùng cổng 3000. Bạn cần chạy docs và application trên các cổng khác nhau hoặc dừng docs trước khi khởi động application ở cổng mà proxy Mini App đang trỏ tới.

Tạo bản build

Lệnh build tạo resident-miniapp/dist, sau đó đồng bộ danh sách CSS/JS trong resident-miniapp/app-config.json theo manifest. Lệnh này thay đổi file cấu hình đó trong checkout.
Lệnh preview phục vụ bản đã build. Bản build không dùng nhánh import.meta.env.DEV, nên không giả định nó có định danh preview hoặc dữ liệu ?demo=1 của dev server. Cấu hình proxy /api đã xác nhận nằm trong server.proxy của Vite; proxy riêng cho preview: Not confirmed by current source code.

Khi không chạy được

Frontend đi qua api.ts; backend xử lý tại /api/resident/auth/zalo và /api/resident/portal. DEV bỏ bước xác minh Zalo và gửi header định danh preview. Backend production không dùng header preview để thay token phiên.