我不是专家,但我可以与您/SOF 分享一些想法,希望能帮助您更多地了解 extjs 的模板引擎。
在非常笼统的术语中,XTemplate 是构建视图/控件(网格、texfield 等)的基础。extjs 中的每个组件控件都有一个“Tpl”或“fieldSubTpl”或“subTpl”等。配置选项是用于呈现组件 UI 的 XTemplate。
所以,假设你正在使用 extjs 原生类“Ext.form.field.TextArea”,它代表一个输入文本控件,如果你查看 extjs 框架的源代码(我认为人们经常忘记查看源代码,学习和从中获得灵感,掌握事物,看看 extjs 开发团队是如何做事的)并找到它的类定义,你将能够看到 XTemplate 是如何使用的。因此,我认为如果您可以检查并理解它,ofc,sencha docs 是一种宝贵的资源,您已经得到了一些答案。
XTemplate 需要一个带有数据/单个对象的数组,其属性需要与 XTemplate 中的变量匹配,因此您有一个代表人和属性名称的对象,即person.Name
在您的 xtemplate 中将通过在 xtemplate 中使用 {Name} 来显示名称. 您提到在控制器中进行一些计算,然后将其传递给 XTemplate,这很好,您可以这样做,但请记住,XTemplate 支持自定义函数,可以在渲染 Xtemplate 之前操作数据,如您在此示例中所见来自 sencha 文档http://docs.sencha.com/ext-js/4-0/#!/api/Ext.XTemplate
如果您想要一个显式使用 XTemplates 的 MVC 应用程序,您可以在此处查看来自 sencha 的“MVC Feed 查看器”应用程序http://docs.sencha.com/ext-js/4-0/#!/example/feed-viewer /feed-viewer.html
我希望它对你有帮助。
复活节快乐!