标签: angular-dart

如何在未登录时导航用户登录页面

我有关于angulardart和登录流程的结构问题.我有一个服务,它与服务器进行通信,并具有login(),logout(),loggedIn()等方法.这一切都在角度很好地工作,但我正在寻找一种最佳实践方式将登录流程合并到我的应用程序中.

该应用程序要求用户登录.因此,当用户未登录时,我是否会在启动时重新路由到自定义"登录"视图?我还没有登录时切换主index.html的部分内容吗?我会创建一个处理登录的自定义组件吗?

对于这种情况,是否存在共同的角度模式?

dart angular-dart

7
推荐指数
1
解决办法
604
查看次数

如何将服务注入RouteInitializerFn(新的路由DSL)

我正在将我的应用程序切换到新的路由DSL.具体来说,我想做这样的事情preEnter:

final RouteInitializerFn routes =(Router router, ViewFactory views) {
  views.configure({
   'chat': ngRoute(
     path: '/chat',
     // authService.requireState returns a Future<bool>, and may invoke an HttpRequest
     preEnter: (RoutePreEnterEvent e) => e.allowEnter(authService.requireState(LOGGED_IN)),
     view: 'views/chat.html'),

   'login': ngRoute(
     path: '',
     defaultRoute: true,
     view: 'views/login.html')
  });
}
Run Code Online (Sandbox Code Playgroud)

这将在模块中配置如下:

value(RouteInitializerFn, routes);

如果你错过了它,我引用一个注射authServiceRouteInitializerFn.这是不可能的,因为它RouteInitializerFn是一个函数而不是一个类,所以不能注入任何东西.如果我routes在一个类中封装了这个函数,我不知道如何配置RouteInitializerFn,所以我有点陷入困境.

dart angular-dart

7
推荐指数
1
解决办法
544
查看次数

在AngularDart中更改应用程序布局抽屉持久性到临时更改

我的AngularDart项目中有一个角度组件的App布局.我怎样才能改变drawer从应用程序的布局persistent,以temporary在媒体屏幕的变化?

dart dart-webui dart-html angular-dart angular-components

7
推荐指数
1
解决办法
136
查看次数

在AngularDart 5和Dart 2中使用SCSS样式文件

我正在使用Dart 2AngularDart 5.

⚠我在网上搜索了我的问题,但我找不到满意的答案.

❔ 我的AngularDart应用程序中是否可以解释我需要包含的所有步骤以及使用SCSS样式文件?

我开始使用您可以在这里找到的快速入门应用程序.

谢谢!

sass dart angular-dart

7
推荐指数
2
解决办法
1824
查看次数

Angular Dart中的模块化路线设计支持独立开发的功能集?

[ 更新以重点提问].AngularDart 在很多方面都很好地支持模块化应用程序设计.路线设计也是如此吗?也就是说,

问题:一个应用程序可以有多个RouteInitializer例如,以下是可能的:

class MyAppModule extends Module {
  MyAppModule() { ...
    type(RouteInitializer, 
       // Currently implementedBy takes only one RouteInitializer? 
       // Here we propose, e.g., to allow a list.
       implementedBy: 
         [MyAppRouteInitializerForFeatureSetA,
         MyAppRouteInitializerForFeatureSetB,
         MyAppRouteInitializerForFeatureSetC,
         ]);
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

使用案例:我正在考虑让我的一些学生参与同一个AngularDart项目,但是(主要是)相互排斥的功能集.理想情况下,我希望他们独立工作(一旦达成"顶级"路由URL前缀).在这种情况下,他们最终会有自己RouteInitializer的.能够在项目子文件夹中"删除",集成时间,而不是将路由初始化复制粘贴到单个类文件中,这将是一件好事.


[问题的原始版本](假设接口名称RouteInitializer不是可能RouterInitializer给出的印象,可以定义多个.)

  1. 路线设计也是如此吗?也就是说,
  2. Router一个Angular Dart应用程序可以关联多少个实例?(我想只有一个.)
  3. 一个应用程序可以有多个RouteInitializer?(假设接口名称是RouteInitializer,而不是可能RouterInitializer,给出的印象可以定义多个.
  4. 如果RouteInitializer允许多个,那么addRoute name参数的范围是多少?

编辑:实际上最后一个问题在分层路由的上下文中具有自己的优点,所以我把它考虑在这里:angulardart-namespace-of-route-names-hierarchical-too.

dart angular-routing angular-dart

6
推荐指数
1
解决办法
238
查看次数

我有一个AngularDart组件,如何在每次组件显示时让文本输入字段自动聚焦?

我在AngularDart组件中有一个文本输入,如下所示:

<input type="email" id="inputFirstName" ng-model="cmp.inputFirstName">
Run Code Online (Sandbox Code Playgroud)

如何在每次组件显示时使文本输入自动对焦?

我尝试设置html5属性自动对焦,但这仅在第一次显示组件时有效.

html5 dart angular-dart

6
推荐指数
1
解决办法
1348
查看次数

Dartlang:在Angular2模板中使用枚举

谁能告诉我是否以及如何在angular2视图模板中使用Dart枚举?

在Typescript中建议将枚举复制到组件范围中.这是有效的,因为javascript中的枚举是一个带有原型的简单实例变量.

但由于dart中的枚举是一等公民,因此无法将它们移动到实例变量中.

提前致谢!

enums dart angular-dart angular2-template angular

6
推荐指数
1
解决办法
510
查看次数

如何获得 Angular Dart 的代码覆盖率?

我尝试使用 packagecoverage从我的 Angular Dart 4.0 项目中获取代码覆盖率。

以下步骤是我的工作流程:

  1. pub serve test --port=8081
  2. pub run test --pub-serve=8081 --pause-after-load
  3. 等待测试运行器打印天文台 URL(例如http://127.0.0.1:12345
  4. pub global run coverage:collect_coverage --port=12345 -o coverage.json
  5. 按 Enter 恢复测试运行程序
  6. pub global run coverage:format_coverage --packages=.packages-c -i coverage.json -o coverage.report

在第5步之后,我会得到一个coverage.json包含一些数据的文件,但我不知道为什么覆盖率报告总是显示每个代码都没有覆盖。

我是否使用错误的流程来获取代码覆盖率?或者有什么更好的方法来做到这一点?

谢谢 !


有我的实验代码:

experiment_component.dart

import 'package:angular/angular.dart';

@Component(
  selector: 'experiment_component',
  template: '<h1>{{greeting}}</h1>'
)
class ExperimentComponent {

  String greeting = '';

  void greet() {
    greeting = 'Hello';
  }

}
Run Code Online (Sandbox Code Playgroud)

experiment_component_test.dart

@TestOn('browser') …
Run Code Online (Sandbox Code Playgroud)

testing code-coverage dart angular-dart

6
推荐指数
0
解决办法
144
查看次数

VSCode Dart 导入快捷方式

VSCode 和/或插件是否提供键盘快捷键来自动在 Dart 文件中添加导入?在 IntelliJ 和 Android Studio 中,使用 Opt+Enter 可以轻松实现此效果。

dart angular-dart visual-studio-code flutter

6
推荐指数
1
解决办法
8977
查看次数

Dart 中 jsonEncode() 和 json.encode() 之间的区别和首选方式是什么?

在 Flutter 文档中,它使用jsonEncode(),而在 Angular 文档中,它使用json.encode(). 两者之间的区别和首选方式是什么?

dart angular-dart flutter

6
推荐指数
2
解决办法
2888
查看次数