如何在 dart 的 angular2-beta.20 中将 HashLocationStrategy 用于路由器?
How to use HashLocationStrategy for router in angular2-beta.20 in dart?
我尝试在 Dart 中使用带有 HashLocationStrategy 的 angular2-beta.20 中的路由器。
但我找不到任何文档,除了
this link to angular2-beta.15 docs,不完整。
该示例显示了 TypeScript 导入而不是 Dart 导入。
所以我尝试导入package:angular2/router.dart
,但是Dart Analyzer一直抱怨找不到LocationStrategy
和HashLocationStrategy
我也不知道如何准确地编写导入,因为顶级提供功能,如上例所示,似乎不存在。
provide(LocationStrategy, {useClass: HashLocationStrategy})
经过一些研究,我发现了以下内容:
LocationStrategy
和 HashLocationStrategy
现在是
package:angular2/platform/common.dart
而不是 package:angular2/router.dart
.
bootstrap()
- 方法是特定于平台的,因此我们需要导入 package:angular2/platform/browser.dart
.
我们需要导入 package:angular2/router.dart
才能在 bootstrap()
方法中使用 ROUTER_PROVIDERS
。
这是 dart 文件初始化的工作代码示例:
// needed to import "bootstrap" method
import 'package:angular2/platform/browser.dart';
// needed to import LocationStrategy and HashLocationStrategy
import 'package:angular2/platform/common.dart';
// needed for Provider class
import 'package:angular2/angular2.dart';
// needed to import ROUTER_PROVIDERS
import 'package:angular2/router.dart';
// import your app_component as root component for angular2
import 'app_component.dart';
void main() {
bootstrap(AppComponent, [
ROUTER_PROVIDERS,
const Provider(LocationStrategy, useClass: HashLocationStrategy)
]);
}
希望这对某人有所帮助! :)
我尝试在 Dart 中使用带有 HashLocationStrategy 的 angular2-beta.20 中的路由器。 但我找不到任何文档,除了 this link to angular2-beta.15 docs,不完整。 该示例显示了 TypeScript 导入而不是 Dart 导入。
所以我尝试导入package:angular2/router.dart
,但是Dart Analyzer一直抱怨找不到LocationStrategy
和HashLocationStrategy
我也不知道如何准确地编写导入,因为顶级提供功能,如上例所示,似乎不存在。
provide(LocationStrategy, {useClass: HashLocationStrategy})
经过一些研究,我发现了以下内容:
LocationStrategy
和HashLocationStrategy
现在是package:angular2/platform/common.dart
而不是package:angular2/router.dart
.bootstrap()
- 方法是特定于平台的,因此我们需要导入package:angular2/platform/browser.dart
.我们需要导入
package:angular2/router.dart
才能在bootstrap()
方法中使用ROUTER_PROVIDERS
。
这是 dart 文件初始化的工作代码示例:
// needed to import "bootstrap" method
import 'package:angular2/platform/browser.dart';
// needed to import LocationStrategy and HashLocationStrategy
import 'package:angular2/platform/common.dart';
// needed for Provider class
import 'package:angular2/angular2.dart';
// needed to import ROUTER_PROVIDERS
import 'package:angular2/router.dart';
// import your app_component as root component for angular2
import 'app_component.dart';
void main() {
bootstrap(AppComponent, [
ROUTER_PROVIDERS,
const Provider(LocationStrategy, useClass: HashLocationStrategy)
]);
}
希望这对某人有所帮助! :)