如何在agility.js中绑定数据结构

How to bind a data structure in agility.js?

本文关键字:绑定 数据结构 js agility      更新时间:2023-09-26

我的敏捷性应用程序正在绑定以下数据结构:

[
    {
        "id":"1", 
        "items":[ {"name":"first"}, {"name":"second"} ]
    },
    {
        "id":"2", 
        "items":[ {"name":"third"}, {"name":"fourth"} ]
    }
]

我想使用这个数据结构来创建一个嵌套列表:

<ul>
    <li>1
        <ul>
            <li>first</li>
            <li>second</li>
        </ul>
   </li>
   <li>2
        <ul>
            <li>third</li>
            <li>fourth</li>
        <ul>
   </li>
</ul>

但是agility.js似乎只处理绑定简单的平面对象。有没有办法在agility.js中实现这样的绑定?如果有,项目和容器模板会是什么样子?

Agility目前不提供对点式变量的绑定。请关注此线程进行更新:

http://groups.google.com/group/agilityjs/browse_thread/thread/5524b72dd1d1894c

我添加了支持:https://github.com/arturadib/agility/pull/91

您可以使用嵌套的敏捷性对象来实现您想要的。

因此,您有一个对象来描述外部列表,然后在该对象中有一个描述第一级子级1&2,那么您就有了另一个描述孙对象的敏捷性对象定义。有点类似于演示TODO应用程序,但有一个更高级别的复杂性。您可以利用Agility.js的继承,编写一个包含两个li对象共享的公共功能的抽象对象。

我认为这种方法比拥有一个"上帝对象"更好的代码设计,它描述列表及其子对象,以及他们的子对象,记住,永远不可能有足够的对象,但单个类很容易承担太多的责任。

希望对有所帮助