繁体   English   中英

灰烬在加载时观察到异步abelongToTo关系属性

Ember observes async belongsTo relationship attribute on load

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在尝试观察一个异步belongsTo关系属性。 我只想观察来自api的更改。 因此,我正在考虑一种单向绑定并观察它。 我只是不确定如何去做。

此jsbin http://jsbin.com/yaxame/1将绑定显示为普通的双向绑定。 每当“某人”“高兴”时,它都会提醒您“某人很高兴”。 但我希望它仅在数据来自api而不是用户输入时发出警报。

双向绑定:

isHappyDidChange: function() {
  if (this.get('model.spouse.isHappy')) {
    alert('Someone is happy');
  }
}.observes('model.spouse.isHappy')

我意识到这个jsbin http://jsbin.com/yaxame/2是错误的,因为您需要触发绑定模板。 那么正确的方法是什么?

单向错误绑定:

isHappyOneWay:  Ember.Binding.oneWay("model.spouse.isHappy"),

isHappyDidChange: function() {
  if (this.get('model.spouse.isHappy')) {
    alert('Someone is happy');
  }
}.observes('isHappyOneWay')

更新思路:

如果我可以像这样观察isLoaded:

isHappyDidChange: function() {
  if (this.get('model.spouse.isHappy')) {
    alert('Someone is happy');
  }
}.observes('model.spouse.isLoaded')

那就太好了,它可以解决我的问题。 但是isLoaded实际上并不意味着模型已加载... http://jsbin.com/yaxame/3

谢谢!

1 个回复

观察isFulfilled可以达到以下目的:

isHappyDidChange: function() {
  if (this.get('spouse.isHappy')) {
    alert('Someone is happy');
  }
}.observes('spouse.isFulfilled')

如jsbin http://jsbin.com/yaxame/4/

更新资料

仍然无法更新记录。 http://jsbin.com/yaxame/5/尝试也观察到'didUpdate',但这没有用。 http://jsbin.com/yaxame/6/但我对此感到满意,至少在现在实现后会解雇。

2 灰烬视图未观察到属性更改

我是Ember的新手,我正尝试使用Ember View来观察控制器中的属性更改。 我可以记录该视图,但是属性更改时处理程序不会触发。 我基本上是想学习当用户单击删除记录时从视图中删除项目的Ember方法。 我还没有找到真正好的指导。 任何建议表示赞赏。 如果我遗漏了任何东西,请 ...

2013-09-17 02:30:19 1 3688   ember.js
3 灰烬加载异步属性

在我的余烬应用程序中,我想加载图像。 我的模型具有服务器图像,因此我异步加载它们。 每个“ foto”都有一个文件位置“ fileName:DS.attr()”的属性。 现在,在我的路线的控制器中,需要扩展路径以将图像加载为背景图像: (日志说)loadImage或path包 ...

4 观察到的灰烬属性,管理模型中的更改

我创建了一个JS bin,概述了一些细节。 我的问题是,在不使用Ember Data的情况下 ,如何在ember中实现可观察所有绑定的“类”,并在对模型进行更改时,根据键路径中的数据将观察到的属性转换为URL。模型对象。 然后,我可以从那里拿走它。 请参考js bin,因为那里有一 ...

6 灰烬在加载时过滤异步数据

我的路线/bets有一个组件,可以显示按未来日期过滤的投注。 路线模板还具有指向/bets/new路线的链接,用户可以在其中添加新的投注。 每个下注都有一个与User的belongsTo关系。 我的问题是,即使我在Ember Inspector中可以看到数据已加载,我的赌注也不会显示在 ...

8 异步管道未渲染时可以观察到angular2查看

我正在使用@ngrx/store ,正在从商店中获取状态的一部分。 我有一个想要显示该切片的组件。 但是,使用{{ obs$ | async}} 模板中存在{{ obs$ | async}} ,则不会呈现整个模板。 如果我删除{{ obs$ | async }} {{ obs$ | ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM