在我的项目中,当执行与UI相关的操作时,我使用了mvc概念。

例如,有一个名为“ Map”的模型,然后还有另一个“ MapView”对象以及“ Map”对象。

现在,我以这种方式创建它们:

function Map(){
  //other codes.
  this.view=new MapView(this);
}


function MapView(model){
  //other code
  this.model=model;
}

现在,模型和视图都可以互相引用。

我想知道这是最佳做法吗?

这会导致性能问题吗?

===============>>#1 票数:0 已采纳

性能上没有错(尽管它可能会在IE3或NN4上放慢速度)。

但是,从设计角度来看,具有双向引用似乎很糟糕。

您可能想使用引用传递,例如MapView.render(model)

  ask by hguser translate from so

未解决问题?本站智能推荐:

2回复

什么可能导致这个奇怪的角度ui模式问题?

我是一个新手程序员,试图用角度和节点组合一个Web应用程序。 我试图结合角度ui模态但有问题。 模态窗口在加载时似乎是从主页面渲染html而不是模板中的html。 但是,如下所示,模板正在加载到页面。 我正在寻找的并不一定是这里出现问题的答案(虽然那会很棒),而是建议用于尝试确定问题
1回复

Javascript MVC双向绑定,无框架依赖

我需要一个具有最小库的解决方案,该库可以帮助我跟踪M-V变化(双向绑定)。 我们的库大小限制不超过7kb。 我们正在寻找有助于解决此问题的优质最少代码。 我们已经尝试过骨干网,我们希望听到或知道任何其他有帮助的开源代码。
1回复

Extjs 4 MVC:参考错误

当我尝试从URL获取值以设置按钮禁用时,出现以下错误。 定义方法后,为什么会出现此错误? 我的观点
2回复

AngularJS不处理JSON参考

我正在做一个小站点来管理食谱。 我有一个MVC Web API服务器端和一个js前端。 现在我的MVC Web API正在将JSON序列化为(清晰易读,谢谢chrome插件JSONView) 但是在我的页面上,我只获得列表中的第一个对象和空的第二个tr标记。 有没有一种方法可以
2回复

ExtJS MVC表单参考

我是Sencha ExtJS的新手。 我刚刚开始创建MVC应用程序。 当前,我正在尝试为该应用程序创建一个登录屏幕,但无法从登录控制器获取对我的登录表单的引用。 这是我的代码: app.js Viewport.js Flexilogin.js 和控制器的Log
2回复

Dojox MVC中的双向绑定-非Dijit,解析器

我正在尝试使用dojox mvc创建一个“复选框树”,在其中取消选中最顶部的复选框将取消选中下面的复选框。 复选框的初始状态/值的数据绑定工作正常,但是当我通过代码将模型项的visible属性更改为false(选中的复选框绑定到此属性)时,复选框保持选中状态。 我可以看到小部件数据模型已
2回复

双向数据绑定不适用于控制器-AngularJS

早上好,大师们。 我无法使双向数据绑定正常工作。 数据绑定在其他所有控制器中都可以正常工作的两种方式,但这给我带来了麻烦。 你能帮忙吗? 控制器/ HTML: app.controller('search', function($scope, $http, $loca
1回复

使用Javascript进行Rails性能

我有一个Rails 4应用程序。 Rails应用程序包含: 一个application.js文件 每个可见模型的my_model.js文件 每个操作的my_model/action.html文件。 在所有这些文件中,我可以编写一些javascript 。
2回复

attachEventOnce()导致“未定义不是函数”

按照最佳实践指南,我收到一个错误“未捕获的TypeError:未定义不是函数”。 通过很多console.logs我发现在以下代码行中抛出了此错误(在console中是匿名的): AttachEventOnce()是导致问题的函数。 您是否有解决方法或进一步调试的想法? 代
1回复

mvc-js文件中的视图中的参考脚本代码

如果我们希望我们的js文件从另一个js文件中“知道”函数和变量的名称,我们可以像这样引用另一个文件: 但是,如果我的“其他”代码在cshtml视图的script标签内,该怎么办? 我如何让我的js文件“知道”视图中的变量和函数的名称? 我当然不能那样做: 有什么办法可以做