簡體   English   中英

在 angular 中向用戶顯示與實際不同的路線

[英]Show different routes to user than actual in angular

我正在使用 Angular、Node(Express) 和 mySQL 進行全棧 web 開發。 我想向用戶展示一些與實際路線不同的路線。 我怎樣才能做到這一點? 例如,這是我的儀表板頁面。

http://localhost:4200/#/dashboard

我希望它被用戶視為其他東西,例如:

http://localhost:4200/#/Welcome 
OR
http://localhost:4200/#/Welcome/LandingPage

意思是,只有輸入 Url 才能訪問此頁面:

 http://localhost:4200/#/dashboard

並且,如果用戶嘗試通過輸入顯示給他的 Url 來訪問此頁面:

http://localhost:4200/#/Welcome 
OR
http://localhost:4200/#/Welcome/LandingPage

然后,他得到一個錯誤。

我已經在app.routing.ts中完成了這一切。 我只想問我該怎么做上面提到的。 向用戶顯示實際上不存在的路線。

進一步說明:當用戶打開頁面時,它將向他顯示為“localhost:4200/#/Welcome”。 我只想向用戶展示這條路線。 在我的代碼中,它實際上應該保留儀表板。 簡單來說,當用戶輸入 url: "localhost:4200/#/Welcome" 時應該會拋出錯誤,因為在代碼中這樣的路由不存在。 它只是作為一種假路線向用戶顯示。 實際上,它應該是“localhost:4200/#/dashboard”,但是向用戶顯示為“localhost:4200/#/Welcome”

如果我理解正確的問題,我想也許使用位置可以解決問題。

constructor(private location: Location){}
replaceState(){ 
  this.location.replaceState("/Welcome");
}

您將必須導入 Location 模塊:

import {Location} from '@angular/common';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM