如何将HTML放在Ext.each()内并在其中呈现值-EXTJS

时间:2018-08-03 00:08:05

标签: javascript extjs

我想在一个forEach循环中渲染一个范围。我这样做是这样的:

var data = [5, 78, 8, 9, 6, 5];

render: function(data) {
  return [
    '<div>'
    Ext.util.Format.ellipsis(this.name, 48),
    '<span>',
    Ext.each(data, function(ct) {
      Ext.util.Format.number(ct, '0,000')
    }),
    '</span>',
    '</div>'
  ].join('');
}

但是上面的代码没有在元素内部呈现任何值,如果我调试它,我会在ct内部看到该值,但是在呈现内部则什么都不显示。任何想法如何使用EXTJS将html放入for循环中?

1 个答案:

答案 0 :(得分:1)

尝试这样的事情:

var data = [5, 78, 8];
Ext.application({
    name: 'Fiddle',

    launch: function () {
        new Ext.panel.Panel({
            renderTo: document.body,
            width: 500,
            height: 500,
            html: data.map((x) => {
                return `<div>
                    <span>Some Name: </span>
                    <span>${Ext.util.Format.number(x, '0,000')}</span>
                </div>`
            }),
            renderTo: Ext.getBody()
        });
    }
});

似乎可以在this demo Sencha's Fiddle

中正常工作