UI5

navTo Push vs Replace — 언제 쓰나 #shorts #SAP #UI5

▶ YouTube에서 보기

직접 해보기

1. manifest.json 라우트 선언

먼저 manifest.json에 라우트를 선언합니다.

"routing": {
  "config": {
    "routerClass": "sap.m.routing.Router",
    "viewType": "XML",
    "controlId": "app",
    "controlAggregation": "pages"
  },
  "routes": [
    { "name": "main",   "pattern": "", "target": "main" },
    { "name": "detail", "pattern": "detail/{id}", "target": "detail" }
  ]
}

2. Push vs Replace 차이

Push는 브라우저 히스토리 스택에 새 항목을 추가합니다. 사용자가 뒤로가기를 누르면 이전 화면으로 돌아갑니다. Replace는 현재 히스토리를 덮어씁니다. 뒤로가기를 해도 이 화면으로는 돌아올 수 없습니다.

// Push — 뒤로가기 가능 (기본값)
this.getRouter().navTo("detail", { id: sId });

// Replace — 뒤로가기 불가
this.getRouter().navTo("detail", { id: sId },
  true  // bReplace = true
);

3. 언제 쓸까

로그인 화면, 결제 완료 화면처럼 뒤로가기를 막아야 할 때 Replace를 사용합니다. 일반 목록→상세 이동에는 Push를 사용해 히스토리를 유지하세요.

핵심 한 줄

navTo 세 번째 인자 true = Replace, 생략 = Push — 뒤로가기 허용 여부만 기억하면 됩니다.

댓글 0

아직 댓글이 없습니다.