【发布时间】:2011-06-08 18:39:09
【问题描述】:
我有一个包含一些项目列表的页面。每个项目都有一些属性:cmets、图像、标题、cmets 表单和内容。创建一个名为item 的类似乎很简单,它将代表列表中的单个项目。
但是,我还有一个“孤立”项目,用于将新项目添加到列表中。例如,它具有所有相同的属性、文本框、按钮等,用于添加图像、编写内容等,但它没有存储在数据库中,并且它有一个新的“添加”按钮,可以将其保存到数据库,并且它的然后添加到列表中。
我是否还应该只创建一个名为 item 的类,并只创建一个名为 isSaved 之类的属性来确定是否显示“添加”按钮、是否为其显示评论表单等?
或者我应该创建 2 个单独的类,调用一个 newItem 并将其用于孤立项目,另一个 savedItem 并将其用于已在数据库中的项目?
另外,这是在 javascript 中,所以我认为我不能使用太多继承。
【问题讨论】:
-
javascript 可以很容易地使用原型或仅使用 jQuery 扩展来继承。 IMO,您应该将对象的 UI 与其数据分开。有一个“类”来保存所有数据,然后将数据绑定到 UI 元素。
标签: javascript jquery oop design-patterns class-design