我有一個包含一個表的模板的一個燼組件。在我的組件中 - 我想發出ajax調用第三方服務並獲取一些數據。得到這些數據後,我將不得不根據輸入做出另一個隨後的ajax調用。由於這需要時間,所以我想一個接一個地更新視圖,當ajax調用完成時。在視覺上 - 這將是在處理完一個請求後向表中添加新行。動態內容加載視圖
目前,ember只允許我們通過路由器中的model()
方法傳遞數組對象。
我看了幾個像List-view這樣的項目,但並沒有解決上述問題。
編輯: -
下面是我目前在做什麼 -
import Ember from 'ember';
export default Ember.Route.extend({
model() {
var list = [];
var promise = $.ajax({
type: 'GET',
url: 'thirdPartyService'
});
promise = promise.then(function(data){
data = JSON.parse(data);
return data[1];
});
promise.then(function(data){
for (var i = 0; i < data.length; i++) {
var idea = data[i];
var url = "thirdPartyService";
var secondPromise = $.ajax({
type: 'GET',
url: url,
dataType: "text"
});
secondPromise = secondPromise.then(function(data){
var result = x2js.xml_str2json(data);
return result;
});
secondPromise.then(function(data){
list.pushObject(item);
});
return secondPromise;
}
});
return list;
}
});
我的模板
<tbody>
{{#each model as |idea|}}
<tr>
<td><input type="checkbox" name="id" value="{{idea.id}}"></td>
<td>{{idea.field4}}</td>
<td>{{idea.field5}}</td>
<td>{{idea.field}}</td>
<td>{{idea.field2}}</td>
<td>{{idea.field3}}</td>
</tr>
{{/each}}
</tbody>
餘燼視圖將呈現列表更改時。我想要做的是 - 在調用list.pushObject(item);
時向表中添加一行。目前 - 我看到視圖正在等待,直到一切都返回。
另外,這個應用程序是一個電子應用程序 - 由於這個我沒有後端每說,我沒有使用餘燼數據。我打電話給幾個第三方服務,因此沒有涉及到燼模。
嚴。 Ember允許各種綁定。只需要在控制器或路由中預定義即可。請告訴我們您嘗試了什麼或您正在尋找什麼。目前的問題太廣泛,無法回答或做出假設。 –
@kristjanreinhold我用當前的工作模型和我的環境的一些細節(我正在構建一個電子應用程序)改進了答案 – Chan