1
可以說我有一個區分聯合,像這樣:途徑段區分聯合分爲不同的類型有和無財產
type Route = HomeRoute | ProfileRoute | BlogRoute;
type HomeRoute = {
route: '/home'
}
type ProfileRoute = {
route: '/profile/:userId',
params: {
userId: string;
}
}
type BlogRoute = {
route: '/blog/:teamId',
params: {
teamId: string;
}
}
而且我有對Route
對象進行動作的功能,有一些可選的邏輯,如果他們有PARAMS :
function processRoute(route: Route) {
if ('params' in route) {
const { params } = route; // <-- this errors
}
}
似乎沒有成爲一個方式(即我可以看到)來檢查params
無需添加註釋any
...
有沒有辦法做到上述不鑄造任何(在參數paramsInRoute
)?
這麼簡單!大概應該先嚐試一下:) –
對此的另外一個想法是,使用類型警衛仍然是一個斷言,所以它由開發者確定'&'-ed屬性在這裏是正確的。 –