gpt4 book ai didi

javascript - Ext JS - 嵌套 Xtemplates

转载 作者:行者123 更新时间:2023-11-28 08:45:36 24 4
gpt4 key购买 nike

我是 ExtJS 开发的新手。我有来自 2 个不同数据存储的数据(例如:DepartmentsStore 和EmployeesStore)。我试图在父表中显示部门列表,并将每个部门内的所有员工作为嵌套表显示到 UI 上的父部门表中。

我使用 XTemplates 加载数据并将其绑定(bind)到我的主面板。但是我在嵌套 XTemplates 时遇到问题。我不确定我是否做错了什么,非常感谢任何帮助。这是 Xtemplate javascript 代码片段,

  var tplEmployeesDetails = new Ext.XTemplate(
'<table width="100%">',
'<tr><td>Employee First Name</td>',
'<td>Employee Last Name</td>',
'<td>Email</td></tr>',

'<tpl for=".">',
'<tpl for="data">',
'<tr><td>{DBxFIRSTNAME}</td>',
'<td>{DBxLASTNAME}</font></td>',
'<td>{DBxEMAIL}</td></tr>',
'</tpl>',
'</tpl>',
'</table>'
);

var tplDepartmentDetails = new Ext.XTemplate(
'<tpl for=".">',
'<tpl for="data">',
'<b>Department Detail:</b>',
'<table>',
'<tr><td>Department Name</td><td>{DBxDEPTNAME}</td></tr>',
'<tr><td>Collateral Name</td><td>{DBxDEPTNAME}</td></tr>',

'Employees Under Department:',
'{[ this.renderEmployees(values.DBxDEPTID)]}',
'</td></tr>',
'{% } %}',

'</table>',
'</tpl>',
'</tpl>',

{
renderEmployees: function(DEPTID)
{
appEngine.autoPost({
sysExtScope: 'false',
sysIgnoreExtension: 'true',
sysAction: 'getdbtable',
sysProjectName: 'OrgProject',
sysEngineApp: 'OrgApp',
sysEngineService: 'DepartmentService',
myRoot: 'SessionRespTable',
sysEngineOrderBy: 'DEPTID DESC',
DBxDEPTID: DEPTID,
myFields: DepartmentServiceFields
},function(EmployeesStore, Records, Resultflag, Options)
{
employeesStore = EmployeesStore.getStore();

//Issue: THIS DOES NOT SEEM TO RETURN THE tplEmployeesDetails Xtemplate markup!!
return tplEmployeesDetails.apply(collatPolicyStore);
});
}
}
);

tplDepartmentDetails.append(mainPanel.body, departmentStore);

最佳答案

在我看来,当您执行 appEngine.autoPost 时,您正在从异步函数返回一个字符串。为此,您的 renderEmployees 函数需要同步返回字符串。 XTemplates 没有内部函数异步返回字符串的概念。

关于javascript - Ext JS - 嵌套 Xtemplates,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19846271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com