【问题标题】:How to use HashLocationStrategy for router in angular2-beta.20 in dart?如何在 dart 的 angular2-beta.20 中为路由器使用 HashLocationStrategy?
【发布时间】:2016-08-23 09:13:02
【问题描述】:

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

所以我尝试导入package:angular2/router.dart,但Dart Analyzer一直抱怨找不到LocationStrategyHashLocationStrategy

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

【问题讨论】:

    标签: dart angular2-routing angular2-router


    【解决方案1】:

    经过一番研究,我发现了以下内容:

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

    • bootstrap()- 方法是平台特定的,所以我们需要导入package:angular2/platform/browser.dart

    • 我们需要导入package:angular2/router.dart 以使ROUTER_PROVIDERSbootstrap() 方法中可用。

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

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

    【讨论】:

      猜你喜欢
      • 2016-06-07
      • 1970-01-01
      • 1970-01-01
      • 2016-03-30
      • 2016-09-11
      • 2016-05-14
      • 1970-01-01
      • 2016-07-27
      • 1970-01-01
      相关资源
      最近更新 更多