Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在dart的angular2-beta.20中为路由器使用HashLocationStrategy?_Dart_Angular2 Routing_Angular2 Router - Fatal编程技术网

如何在dart的angular2-beta.20中为路由器使用HashLocationStrategy?

如何在dart的angular2-beta.20中为路由器使用HashLocationStrategy?,dart,angular2-routing,angular2-router,Dart,Angular2 Routing,Angular2 Router,我尝试在Dart中使用angular2-beta.20中的路由器和HashLocationStrategy。 但我找不到任何文件,除了 ,这是不完整的。 该示例显示TypeScript导入,而不是Dart导入 因此,我尝试导入包:angular2/router.dart,但dart分析器一直抱怨找不到LocationStrategy和HashLocationStrategy 此外,我不知道如何准确地编写导入,因为上面的示例中似乎不存在顶级的提供函数。 provide(LocationStrate

我尝试在Dart中使用angular2-beta.20中的路由器和HashLocationStrategy。 但我找不到任何文件,除了 ,这是不完整的。 该示例显示TypeScript导入,而不是Dart导入

因此,我尝试导入
包:angular2/router.dart
,但dart分析器一直抱怨找不到
LocationStrategy
HashLocationStrategy

此外,我不知道如何准确地编写导入,因为上面的示例中似乎不存在顶级的提供函数。
provide(LocationStrategy,{useClass:HashLocationStrategy})

经过一些研究,我发现以下几点:

  • LocationStrategy
    HashLocationStrategy
    现在是
    package:angular2/platform/common.dart
    而不是
    package:angular2/router.dart

  • bootstrap()
    -方法是特定于平台的,因此我们需要导入
    包:angular2/platform/browser.dart

  • 我们需要导入
    包:angular2/router.dart
    以在
    bootstrap()
    方法中提供
    router\u提供程序

下面是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)
  ]);
}

希望这对某人有帮助!:)

经过一些研究,我发现如下:

  • LocationStrategy
    HashLocationStrategy
    现在是
    package:angular2/platform/common.dart
    而不是
    package:angular2/router.dart

  • bootstrap()
    -方法是特定于平台的,因此我们需要导入
    包:angular2/platform/browser.dart

  • 我们需要导入
    包:angular2/router.dart
    以在
    bootstrap()
    方法中提供
    router\u提供程序

下面是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)
  ]);
}
希望这对某人有帮助!:)