代码之家  ›  专栏  ›  技术社区  ›  jax

视图以MVC模式保存模型中的对象,可以吗?

  •  0
  • jax  · 技术社区  · 14 年前

    我有一个类保存树的树项。假设构造函数是这样的 ViewTreeItem(List item) 可以这样称呼

    for( List l : model.getLists() )
        getTree().add( new ViewTreeItem(l) );
    

    我的控制器 ControllerTreeItem 使用 List item 引用直接修改列表,而不是调用model来完成工作。

    这样换模型可以吗?如果不是的话,我该怎么做呢?

    2 回复  |  直到 14 年前
        1
  •  0
  •   Dhruv Gairola    14 年前

    MVC的整体点是使设计灵活。我认为模型中最好有一个方法,可以用来修改列表,而不是直接修改,因为这将否定使用MVC模式的全部意义。

        2
  •  0
  •   Ray Tayek    14 年前

    假设您的视图正在观察模型,则:

    1)视图保持对模型的引用是正常的。

    2)应该通过调用模型中的方法来更改模型,并在调用视图onUpdate(模型模型)时更新视图。