angular-dart - 如何从当前路线获取路线ID?
问题描述
我在处理看似微不足道的事情时遇到了麻烦。
我创建了一条可以查看的路线,/cans/1
当我到达那里时,我可以查看内容。
对于我的生活,我无法弄清楚如何将参数 1 从 URL 获取到视图中。
import 'package:angular/angular.dart';
@Component(
selector: 'canId-summary',
template: '''
<div>
<h1>canId Summary</h1>
{{canId}}
</div>
''',
directives: [coreDirectives],
)
class CanComponent {
void canId() {
// how do I get the $id out of the url for here?
}
}
该路线适用于此内容
import 'package:angular_router/angular_router.dart';
const idParam = 'id';
class RoutePaths {
static final dashboard = RoutePath(path: 'dashboard');
static final cans = RoutePath(path: 'cans');
static final can = RoutePath(path: '${cans.path}/:$idParam');
}
int getId(Map<String, String> parameters) {
final id = parameters[idParam];
return id == null ? null : int.tryParse(id);
}
import 'package:angular_router/angular_router.dart';
import 'route_paths.dart';
import 'dashboard_component.template.dart' as dashboard_template;
import 'cans_component.template.dart' as cans_template;
import 'can_component.template.dart' as can_template;
export 'route_paths.dart';
class Routes {
static final dashboard = RouteDefinition(
routePath: RoutePaths.dashboard,
component: dashboard_template.DashboardComponentNgFactory,
);
static final cans = RouteDefinition(
routePath: RoutePaths.assessments,
component: cans_template.CansComponentNgFactory,
);
static final can = RouteDefinition(
routePath: RoutePaths.can,
component: can_template.CanComponentNgFactory,
);
static final all = <RouteDefinition>[
dashboard,
cans,
can,
RouteDefinition.redirect(
path: '',
redirectTo: RoutePaths.dashboard.toUrl(),
),
];
}
解决方案
我最终错过了以下解决方案之上的导入:
import 'package:angular_router/angular_router.dart';
和解决方案:
class CanComponent implements OnActivate
和
@override
void onActivate(RouterState previous, RouterState current) async {
final id = current.parameters['id'];
}
推荐阅读
- java - 如何在生产环境中使用 asdf-vm
- c# - Shopify 商店 IFrame 中不存在所需的防伪 cookie“__RequestVerificationToken”
- javascript - 传递 JSON 文件而不是 URL 链接
- android - 查看方法 setX setTranslationX setTop animate().x() 不工作
- javascript - Vue 3 Typescript 无法从 ref 访问方法
- laravel - Laravel 推送通知。如何获取设备令牌?-fcm
- angular - 如何在 Angular 11 中使用路由解析器重新加载当前路由
- kotlin - val如何将图像放入
- javascript - 带有嵌套数组的 FormData 到 JS 对象
- php - 从里程表计数中删除数据的Mysql或php解决方案