【发布时间】:2012-02-20 19:17:23
【问题描述】:
我一直在对主干和淘汰赛等框架进行大量研究,并试图找出处理密集对象层次结构以及将对象参数绑定到 DOM 的最佳选择。
我正在处理具有自己的参数但也包含对象的对象。那些对象又具有自己的参数并包含对象等。到大约 5-6 个对象的级别。例如:
var Program = {
id: 123,
name: "some name",
cycle1 {
cycleName: "another name",
startDate: "1-1-2012",
day1 {
startDate: "1-1-2012",
metaData {
foo: "bar",
foo2: "bar 2"
}
}
day2 {
startDate: "1-1-2012",
metaData {
foo: "bar",
foo2: "bar 2"
}
}
}
cycle2 {
cycleName: "another name",
startDate: "1-1-2012",
day1 {
startDate: "1-1-2012",
metaData {
foo: "bar",
foo2: "bar 2"
}
}
day2 {
startDate: "1-1-2012",
metaData {
foo: "bar",
foo2: "bar 2"
}
}
}
}
这是一个非常简单的例子,但给出了一个想法。这里有一个 Program 对象,其中包含未知数量的 Cycle 对象,其中包含 Day 对象,其中包含 MetaData 对象。同样,它们的数量几乎可以肯定是完全可变的,并且每个项目都需要绑定到一个 DOM 元素。
我知道 Backbone 确实不是为嵌套设置的......虽然 Knockout 可能也不是,但我觉得我可能可以更快地了解它。
【问题讨论】:
-
这里的“处理”到底是什么意思?换句话说,您希望框架对对象做什么?
-
好问题。句柄是指简单的 DOM 绑定。每个属性都需要绑定到一个文本字段,并嵌套在我需要切换状态的 div 中; addClass(".active") 到一个,从所有其他人中删除,类似的东西。我可以在程序上完成所有这些,但它很混乱,更难维护,而且可扩展性较差。
标签: javascript frameworks