TOGOUTECH

model-view-controller

全部标签

javascript - backbone.js 模型指向嵌套模型的相同实例

使用backbone.js,这是一个快速测试来演示我在使用嵌套模型时遇到的问题。前言我有一个Obj模型,其中包含2个嵌套模型,Obj1和Obj2。Obj模型本身有一个View(ObjView),主页面本身也有一个View(BodyView)。主页只有一个按钮,id=add。每次单击按钮时,都会向ObjCollection添加一个新的Obj,并且ObjView会向页面添加一个按钮(id=clickMe)。clickMe按钮绑定(bind)到一个testFunc,console.logsthis.model和this.model.get("obj1")。问题通过检查console.logs

javascript - 为什么 backbone.js 在访问模型时返回一个空数组?

我有一个路由器访问它的集合。我的for循环没有遍历模型,所以我尝试记录集合以查看它返回的内容。事实证明,当我直接记录集合时,我会按预期看到所有模型。但是如果我尝试记录集合的模型属性,我会得到一个空数组!这没有意义。这些线直接相互跟随。我尝试更改顺序并得到相同的结果。console.log(this.collection);=>Shots_byCid:Object_byId:Objectlength:15models:Array[15]__proto__:Shots...console.log(this.collection.models);=>[]console.log(t

JavaScript MVC 框架 + raphaelJS

我正在尝试制作一个具有客户端MVC架构的应用程序,但除了HTML模板之外,它还具有SVG元素作为View(我使用raphael来管理它)。是否有任何JavaScriptMVC框架可以很好地与raphaelJS作为View一起工作?如果没有,是否有任何建议的框架可以很好地与之配合使用? 最佳答案 Backbone.js是一个简单的MVC框架,它不限制使用哪个模板引擎,而是给你自己的选择。在backbone渲染函数中,它总是从一些JSON数据生成HTML代码,如下所示:render:function(){//useunderscorea

javascript - Marionette.js 与 Chaplin.js 的比较

我目前正在构思一个大型单页Web应用程序。会有很多组件,所以关注点分离对我来说很重要。服务器基本上是一个带有一些糖的REST服务器,比如向客户端发送模板代码。所以我需要决定我想在客户端使用哪个MVC框架。我真的很喜欢backbone.js,所以我想有一个依赖它的大框架。我过来的是Marionette.js和Chaplin.js。有没有人使用过一个或两个框架并且可以简单介绍一下它们?优势、劣势、背后的社区还是它们基本相同?这不应该是关于哪个更好的讨论,只是一个简短的功能列表,所以我可以更好地决定使用哪个,因为我没有时间真正开始使用两者。 最佳答案

javascript - JavaScript 中的依赖注入(inject)? (用于数据驱动的可视化)

这些是我的JavaScript应用程序中的一些类:myApp.mode.modelHandlesthestatemyApp.mode.controllerInstantiatesandupdatescomponentsbasedonthemodelmyApp.data.dataManagerDoesoperationsonthedataSourcemyApp.data.dataSourceAbigsingletonwithstructureddatamyApp.chart.gridAgridcomponentmyApp.chart.scatterAscattergramrenderer

javascript - AngularJS 中的多个独立部分

我一直在研究Angular.js教程,现在我想扩展它。这是一个简单的CRUD应用程序,具有模板列表:list.html(仅在数据库中记录标题和内容)、创建表单:new.html和编辑表单:edit.html。刚才list.html从我的REST应用加载模板数组并将它们显示在表格中。有一个搜索表单和一些排序功能。New.html有一个用于创建新模板的表单。这两个.html文件是通过不同的路径加载的。#/和#/new我现在想要做的是拥有一个文件index.html,它将list.html加载到一个div中,然后将new.html加载到另一个div中。这个想法是记录列表将始终显示在左侧,然后

javascript - 在MVC中防止循环事件的优雅方法?

问题简而言之:在MVC中,您如何区分复选框单击(或选择框或列表框更改)与人为“Controller,修改模型”的意思,以及Controller的复选框单击(或选择框或列表框更改),意思是“我”我因为模型已经改变而更新View”?示例:我有一个JS应用程序(都是一个大的HTML+JS页面;它背后有一个服务器,AJAX正在运行,但这对示例来说并不重要)它具有由“边缘”连接的“顶点”概念。UI允许您在map上添加和删除顶点,以及启用或禁用顶点对之间的边。有两种方法可以禁用从顶点A到顶点B的边:单击边缘使“边缘详细信息”窗口为您提供“禁用此边缘”按钮;或单击顶点A(或B)以使“顶点详细信息”窗

javascript - angularjs 中的主干样式模型?

如果这个问题已经在其他地方得到回答,我深表歉意,但我找不到完整、明显(至少对我而言)的解决方案。我对主干模型的想法有经验。在我看来,它类似于任何其他OOP语言中的类——使用Backbone.Model.extend()创建一个“类”,并在您需要该类的新实例时对其调用new。如果我有一个应用命名空间,我可以将所有对象存储在那里,并执行类似App.getAllThisOrThatTypeModel()的操作。这是一个Angular服务吗?有很多服务(每种类型的模型一个),基本上是用“服务”模仿“类”,这是一个好的“最佳实践”吗?当我尝试从Backbone迁移到Angular再到实验时,我只

javascript - 用于大型单页 js 应用程序的 dojo vs extjs

我将构建一个非常大的mvcjs应用程序管理应用程序,并将其缩小到dojo和extjs我想知道在过去6个月内是否有人对这些框架中的任何一个有任何经验,以及您是否对以下任何方面有任何问题发展速度MVC文档绑定(bind)内化小部件的主题可搜索的客户端存储(不必离线,只需能够在收到记录后存储记录,然后对这些记录进行本地搜索)使用像selenium这样的全栈工具进行测试数据网格,分页,对整个作品进行排序 最佳答案 因为Dojo会做您需要的一切。Dojo支持完全按照您的要求执行的“存储”。它们还支持JsonRestStore、XMLStore

javascript - Ember JS 如何设置应用程序

我是一个Ember新手,正在努力让它工作;但是我对App.initialize()方法感到困惑。如果我使用以下代码,它会抛出错误(找不到对象App):App=Ember.Application.extend()App.initialize()但是如果我使用下面的代码;它说初始化被调用了两次。App=Ember.Application.create()App.initialize()执行此操作的最佳方法是什么? 最佳答案 Application不再提供initialize方法。相反,您应该使用Application#deferRead