我是谷歌飞镖的新手,现在一直在努力学习它.我一般都是编程的新手,我正在尝试阅读文档; 但是,我觉得有点不知所措.
我想知道在这里为空格键创建交互的最合适的方法.当一个人推空格键时,它会在函数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 有两个:
==和identical()。通过语法的选择,想要==比 更频繁地使用 Dart 的运算符感觉很自然identical(),我喜欢这一点。事实上,惯用 Dart 的平等部分指出“在实践中,你很少需要使用” 。identical()
在最近对我关于自定义过滤器的一个问题的回答中,似乎Angular Dart倾向于使用 ,identical()而不是==尝试确定模型的更改是否已达到稳定状态。(我想,出于效率的原因,这对于大型模型来说是有意义的。)
这让我开始考虑int's 的身份,所以我写了一些identical()over ints 的测试。虽然我预计小ints可能会被“内嵌/缓存”(例如类似于JavaInteger.valueOf()所做的),但令我惊讶的是,我似乎无法生成两个int相等但不相同的 s。我得到类似的结果double。
int和double值是否被拘留/缓存?或者也许identical()是特别对待他们?来自 Java 背景,我曾经将 Dart 等同于:
==到 Java 的equal()方法和identical()到 Java 的相等性测试 …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) 我只是在阅读 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)
实际导入?
是否可以通过GitHub Web 界面更改文件的可执行标志(这是git 支持的唯一文件权限) ?当然,它可以从命令行完成,但我想知道是否/如何通过网络界面完成。
是否在某处记录了AngularDart指令的完整列表?据我所知,鉴于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()(对象身份),恕我直言.我使用以下小例子运行了一些测试来说明问题:
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) 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 ×7
angular-dart ×5
attributes ×1
dart-webui ×1
equality ×1
executable ×1
filter ×1
github ×1
idempotent ×1
identity ×1
semantics ×1