从Dojo中的对象列表创建表的最佳方法?

时间:2016-02-28 16:17:21

标签: javascript dojo

我需要从对象列表中创建html表。 例如,我有对象列表:

[{name: aaa, surname : ssss}, {name: nnn, surname : rrrr}....]

我希望html表看起来像这样:

    |Name|Surname|
    |aaaa|sssss  |
    |nnnn|rrrr   |

这样做的最佳方式是什么?

AngularJs有一个ngRepeate指令,可以快速,舒适地创建表格。 Dojo有类似的方法吗?

3 个答案:

答案 0 :(得分:1)

您可以使用Dojo DataGrid从对象填充/渲染表格;

https://dojotoolkit.org/reference-guide/1.10/dojox/grid/DataGrid.html

所以语法看起来有点像下面一样;

 var grid = new DataGrid({
        id: 'grid',
        structure: layout
    });

您可以将人物对象列表作为“结构”参数传递给DataGrid 即

layout = [{name: aaa, surname : ssss}, {name: nnn, surname : rrrr}....] 

希望这有帮助!

答案 1 :(得分:1)

是的,使用dgrid。它得到了很好的支持和维护。这里有一个如何create the grid from JSON的例子。还有很多演示如何在页面上配置dgrid组件以显示各种类型的数据(例如,将一些行或列连接在一起)。

答案 2 :(得分:0)

我认为这个问题的正确答案是:不,在dojo中没有像angular的ng-repeat那样,至少在html方面没有。正如Amiramix所提到的,最接近你能做到的就是dgrid。但它的使用比简单的角度ng重复更复杂。

如果你只想做一个简单的html表,这可能有点过分了,但是如果你需要一个更强大的表,它会给你的表带来很多有用的功能。因此,根据您的使用情况,可能值得一试。如果您想要超越渲染几行数据的静态视图,可以在dgrid.io获得全面的教程。

现在,这一切都取决于你的应用程序的整体架构(如果你使用MVC框架,你可能有一个模板引擎完全符合你的需要,无论你是否使用dojo。从你的问题,我们不真的知道你使用的道场还有什么。)