小编Pat*_*lin的帖子

如何在飞镖编程中监听键盘事件

我是谷歌飞镖的新手,现在一直在努力学习它.我一般都是编程的新手,我正在尝试阅读文档; 但是,我觉得有点不知所措.

我想知道在这里为空格键创建交互的最合适的方法.当一个人推空格键时,它会在函数void startwatch(),void resetwatch()之间切换

我相信这是keyboardEventController的正确文档页面和文档

void main() {

}

void startwatch() {
  mywatch.start();
  var oneSecond = new Duration(milliseconds:1);
  var timer = new Timer.repeating(oneSecond, updateTime);
}

void resetwatch() {
  mywatch.reset();
  counter = '00:00:00';
}
Run Code Online (Sandbox Code Playgroud)

我需要立即回复所需的任何进一步信息.非常感谢你的帮助.

dart dart-webui

5
推荐指数
1
解决办法
1770
查看次数

Dart int 和 double 被实习?由相同的()特别对待?

Dart 有两个:

  • 一个相等运算符==
  • 一个名为 的顶级函数identical()

通过语法的选择,想要==比 更频繁地使用 Dart 的运算符感觉很自然identical(),我喜欢这一点。事实上,惯用 Dart 的平等部分指出“在实践中,你很少需要使用” 。identical()

在最近对我关于自定义过滤器的一个问题的回答中,似乎Angular Dart倾向于使用 ,identical()而不是==尝试确定模型的更改是否已达到稳定状态。(我想,出于效率的原因,这对于大型模型来说是有意义的。)

这让我开始考虑int's 的身份,所以我写了一些identical()over ints 的测试。虽然我预计小ints可能会被“内嵌/缓存”(例如类似于JavaInteger.valueOf()所做),但令我惊讶的是,我似乎无法生成两个int相等但不相同的 s。我得到类似的结果double

intdouble值是否被拘留/缓存?或者也许identical()是特别对待他们?来自 Java 背景,我曾经将 Dart 等同于:

  • ==到 Java 的equal()方法和
  • identical()到 Java 的相等性测试 …

identity equality object-identity dart

5
推荐指数
2
解决办法
202
查看次数

在AngularDart中包含mustache指令时,NgAttr值最初为空

AngularDart教程的第3章定义了一个rating @NgComponent(参见下面的摘录),它使用index.html如下:

<rating max-rating="5" rating="ctrl.selectedRecipe.rating"></rating>
Run Code Online (Sandbox Code Playgroud)

在该章中,还建议max-rating @NgAttr可以通过以下方式设置{{...}}:

<rating max-rating="{{ctrl.max}}" rating="ctrl.selectedRecipe.rating"></rating>
Run Code Online (Sandbox Code Playgroud)

RecipeController我简单声明:

 int max = 5;
Run Code Online (Sandbox Code Playgroud)

如果我print("maxRating('$value')")在组件的maxRating()setter主体的顶部添加(见下文),那么在运行应用程序时,我得到以下输出:

maxRating('')  // printed 7 times
maxRating('5') // printed 7 times
Run Code Online (Sandbox Code Playgroud)

问题:为什么价值最初是空的? 我认为这是因为插值还没有完成,但是为什么在值"准备好"之前完全调用了setter?


RatingComponent类定义的摘录:

@NgComponent(
selector: 'rating', ...
publishAs: 'cmp'
)
class RatingComponent {
  ...

  @NgTwoWay('rating')
  int rating;

  @NgAttr('max-rating')
  set maxRating(String value) {
    var count = value == null ? 5 : int.parse(value);
    stars = new List.generate(count, (i) …
Run Code Online (Sandbox Code Playgroud)

attributes dart angular-dart

5
推荐指数
1
解决办法
461
查看次数

AngularDart 中的 somecomponent.template.dart 导入指向什么?

我只是在阅读 AngularDart路由教程并遇到了这个代码片段。

import 'package:angular/angular.dart';
import 'package:angular_router/angular_router.dart';

import 'route_paths.dart' as paths;
import 'crisis_list_component.template.dart' as clct;
import 'hero_list_component.template.dart' as hlct;

@Injectable()
class Routes {
  static final _crises = new RouteDefinition(
    routePath: paths.crises,
    component: clct.CrisisListComponentNgFactory,
  );

  static final _heroes = new RouteDefinition(
    routePath: paths.heroes,
    component: hlct.HeroListComponentNgFactory,
  ); ..... see routing tutorial link above.
}
Run Code Online (Sandbox Code Playgroud)

有什么作用

import 'crisis_list_component.template.dart' as clct;
import 'hero_list_component.template.dart' as hlct;
Run Code Online (Sandbox Code Playgroud)

实际导入?

dart angular-dart angular-dart-routing

5
推荐指数
1
解决办法
1081
查看次数

如何在 GitHub 中设置文件权限

是否可以通过GitHub Web 界面更改文件的可执行标志(这是git 支持的唯一文件权限) ?当然,它可以从命令行完成,但我想知道是否/如何通过网络界面完成。

executable file-permissions github

5
推荐指数
1
解决办法
1433
查看次数

AngularDart指令列表?

是否在某处记录了AngularDart指令的完整列表?据我所知,鉴于AngularDart的快速发展,此列表可能会发生变化.

dart angular-dart

4
推荐指数
1
解决办法
2099
查看次数

AngularDart自定义过滤器调用()方法需要是幂等的吗?

Angular Dart教程的主要运行示例是Recipe Book应用程序.关于过滤器和服务第5章末尾的练习建议尝试" 创建一个[自定义]过滤器,将所有[列出的每种成分]的数量相乘 ",从而允许" 用户加倍,三倍,或者食谱四倍." 例如,当加倍时,"1/2杯面粉"的成分将成为"1杯面粉".

我编写了这样一个自定义过滤器:它需要一个Ingredients 列表(由a quantity和a 组成description)并返回一个新的Ingredients 列表(增加数量),但是我收到以下错误:

5 $digest() iterations reached. Aborting!
Run Code Online (Sandbox Code Playgroud)

我的问题是:AngularDart自定义过滤器call()方法的必需和/或允许行为是什么?例如,显然允许从其输入列表中删除(即过滤)元素,但是它是否还可以添加新元素或替换元素?Dart angular.core NgFilter文档简单地说"过滤器是一个带调用方法的类".我还没有找到更多细节.

AngularJS帖子的答案推断,似乎重复调用call()should(最终?)会产生"相同的结果".如果是这样,这将是一个合理的约束.

产生"相同的结果"可能意味着call()需要是幂等的,但在Dart的情况下,这种幂等性应该相对于==(对象等价)而不是identical()(对象身份),恕我直言.我使用以下小例子运行了一些测试来说明问题:

  • main.dart
    import 'package:angular/angular.dart';

    class A { }

    @NgFilter(name:'myFilter') class MutatingCustomFilter {
      final A _a = new A();
      call(List list) => new List.from(list)..add(_a); // runs ok. …
Run Code Online (Sandbox Code Playgroud)

filter idempotent dart angular-dart semantics

3
推荐指数
1
解决办法
686
查看次数

如何在可能带有重复项的简单值列表上使用AngularDart ng-repeat

AngularDart ng-repeat指令似乎需要唯一的值; 例如,以下

  <li ng-repeat="x in ['Alice', 'Bob', 'Alice']">...</li>
Run Code Online (Sandbox Code Playgroud)

结果是

  [NgErr50] ngRepeat error! Duplicates in a repeater are not allowed. 
  Use 'track by' expression to specify unique keys.
Run Code Online (Sandbox Code Playgroud)

假设字符串列表是从某个外部源获得的,并且不保证值的唯一性,那么如何[NgErr50]避免?

dart angular-dart

2
推荐指数
1
解决办法
1870
查看次数