当我将调试器mapped
置于deferred.resolve(mapped);
. 但是,它不会将其转移到我的 dxTileView 中。
它真的不应该是一个绑定问题,因为它显示的noDataText
是错误而不是错误。
有人对我要去哪里有任何想法吗?
var dataSource = new DevExpress.data.DataSource({
load: function (loadOptions) {
if (loadOptions.refresh) {
var deferred = new $.Deferred();
callService("LoadEmployees", {
device: lStorage.getDeviceID()
}, function (result) {
serverActive = true;
var mapped = $.map(result, function (data) {
return {
info: '',
id: data.EmployeeNo,
name: data.Name,
widthRatio: 2,
status: data.Status,
lastProject: data.LastProject,
lastStart: data.LastStart,
lastCostCenter: data.LastCostCenter,
lastScan: data.LastScan,
projectName: data.LastProject ? data.LastProject.Name : null,
inBreak: data.Status == 2,
working: data.Status == 1,
notWorking: data.Status == 0,
aktivProjectId: null
}
});
deferred.resolve(mapped);
});
return deferred.promise();
}
},
});
html在这里:
<div id="mitarbeiter" data-bind="dxTileView: {
noDataText:noDataText,
height:tileWidgetHeight,
itemClickAction:tileClick,
baseItemHeight: 80,
baseItemWidth: 100,
dataSource:dataSource,
showScrollbar: showScrollbar
}">
<div data-options="dxTemplate : { name: 'item' } " data-bind="css: {working:working,inBreak:inBreak}" class="tile">
<h2 data-bind="text: name"></h2>
<p data-bind="text: projectName"></p>
</div>
</div>