fix: improve type safety and error handling in arkts-development

- Replace Record<string, Object> with specific interface types for router params
- Add error handling catch block to list-page-template.ets
- Add clarification note for router.back() with params
- Improve type safety following ArkTS best practices
This commit is contained in:
cheliangzhao
2026-02-10 20:52:17 +08:00
parent 81b3c82d16
commit 9d902b1074
3 changed files with 45 additions and 31 deletions

View File

@@ -96,7 +96,11 @@ router.replaceUrl({ url: 'pages/New' });
router.back();
// Get params
const params = router.getParams() as Record<string, Object>;
interface RouteParams {
id: number;
title?: string;
}
const params = router.getParams() as RouteParams;
```
## Network Request

View File

@@ -28,6 +28,9 @@ struct {{PageName}} {
{ id: '1', title: 'Item 1', description: 'Description 1' },
{ id: '2', title: 'Item 2', description: 'Description 2' },
];
} catch (error) {
console.error('Failed to load items:', error);
// TODO: Show error message to user
} finally {
this.isLoading = false;
}

View File

@@ -70,17 +70,24 @@ router.back({
url: 'pages/HomePage',
params: { result: 'success' }
});
// Note: Previous page receives params via router.getParams()
```
### Get Parameters
```typescript
// Define expected params interface
interface PageParams {
id: number;
title?: string;
}
// In target page
aboutToAppear(): void {
const params = router.getParams() as Record<string, Object>;
const params = router.getParams() as PageParams;
if (params) {
const id = params['id'] as number;
const title = params['title'] as string;
const id = params.id;
const title = params.title;
}
}
```