我得到" application.js:72 TypeError:_this2.get(...)。toArray不是函数"以下代码中的错误。我试图推动服务器对模型的响应,以便模型动态更新。这发生在控制器中。 Controller拦截模板中另一个组件的操作。这里出了什么问题?
javasriptArray.push("string1");
javasriptArray.push("string2");
javasriptArray.push("string3");
...
答案 0 :(得分:0)
你的模特'一个余烬数据模型?如果是这样,它实际上可能是一个承诺,并且在这种情况下toArray将不起作用。要解决此问题,请在完全解析后返回模型,或者使用.then将模型转换为数组。 作为旁注,如果您的唯一目标是将响应添加到模型中,则可以不进行所有转换,只需将对象直接添加到模型中即可。可能类似于" Ember.set(model,' newAttr',Ember.Object.create(response)); 并使用存储在newAttr。
中的信息希望这有帮助! :)
答案 1 :(得分:0)
如果您返回RSVP.hash
,则无法执行this.get('model').toArray()
,因为现在模型只是object
。我想你可能需要从像this.get('model.reportsOrSomethingWhichYouReturnFromModelHook')
这样的模型中获取精确的属性。