【问题标题】:Ember solve promises in propertyEmber 解决财产中的承诺
【发布时间】:2014-09-15 00:33:20
【问题描述】:

我有一个内容是计算属性的选择框。 对于计算,我必须从商店中找到一些记录。 Find 返回一个必须解决的承诺。但是怎么做?

代码如下:

App.IndexController = Ember.Controller.extend({
  selectedCategory:null,
  person: function() {
      var self = this;
      //return [{"id":1,"name":"Dummy"}];

      return this.store.find('author',1).then(function(author){
        return author;
      });

    }.property('person'),
  actions: {
    submit: function() {
      //alert("Submitted!");
    } 
  }
});

还有jsBin:http://jsbin.com/pexolude/167/edit

ps.:我知道我可以创建一个函数,并在 then 中设置 person 属性,但我想学习解析并返回一个 Promis 的结果。 (如果可能的话。)

【问题讨论】:

  • 我不想返回承诺,而是返回它的解析值。

标签: javascript ember.js


【解决方案1】:

您尝试的方法不起作用,因为计算属性将返回 Promise 本身,而不是 Promise 返回的东西。

This answer 详细介绍了一个确实工作的方法(Ember v1.6.1),它只使用一个计算属性。不过,正如您所指出的,从观察者内部简单地定义 set 属性可能更快、更易读。

【讨论】:

    猜你喜欢
    • 2020-08-29
    • 2015-06-24
    • 1970-01-01
    • 2018-04-02
    • 2019-09-29
    • 2018-03-19
    • 1970-01-01
    • 2018-06-10
    • 2016-03-24
    相关资源
    最近更新 更多