기여하기

이 문서 편집

문서를 번역하거나 컴퓨터에서 전체 프로젝트를 여세요.

작업을 제출하기 전까지는 아무것도 게시되지 않습니다.

프런트엔드 라우팅

Wails 애플리케이션에서 프런트엔드 라우팅 사용하기

프런트엔드 라우팅은 단일 페이지 애플리케이션에서 뷰를 전환하는 데 널리 사용되는 방식입니다. 이 가이드에서는 Wails를 사용할 때 프런트엔드 프레임워크별로 권장되는 접근 방식을 설명합니다.

Vue에서 권장되는 라우팅 방식은 해시 모드입니다:

javascript
import { createRouter, createWebHashHistory } from "vue-router";

const router = createRouter({
  history: createWebHashHistory(),
  routes: [
    //...
  ],
});

해시 모드는 URL 해시를 사용하여 서로 다른 뷰를 렌더링합니다. 해시 기반 URL 형식을 사용하므로 Wails 런타임이 라우팅에 간섭하여 발생하는 문제를 방지할 수 있습니다.

해시 라우팅을 사용해야 하는 이유

Wails는 프런트엔드를 네이티브 웹뷰 창에 임베드합니다. 해시 기반 라우팅(/page 대신 #/page)을 사용하면 다음 항목과의 충돌을 방지할 수 있습니다:

  • Wails 런타임의 내부 라우팅
  • 플랫폼별 네이티브 창의 URL 처리 방식
  • 루트가 아닌 경로에서 제공되는 프로덕션 애셋

문제 해결

프로덕션 빌드에서 프런트엔드 라우팅에 문제가 발생하는 경우 다음을 확인하세요:

  • 프런트엔드 빌드 도구가 해시 모드 라우팅용으로 출력하도록 구성되어 있는지 확인하세요
  • Vite 기반 프로젝트에서는 vite.config.js에 base: "./"을 추가하세요
  • index.html이 SPA 라우팅을 위한 폴백을 올바르게 처리하는지 확인하세요
페이지 편집

마지막 업데이트: