草庐IT

NAT模型

全部标签

javascript - 如何在保存 Backbone 模型时触发事件?

如果我做对了我的功课,我了解到Backbone没有内置的save事件,该事件在使用模型的保存方法保存模型时触发(即使有是一个destroy事件)。我还了解到Backbone有一个漂亮的机制,可以使用Backbone.Events对象创建自定义事件。使用后者是可行的,但我的印象是它不够精细,无法满足我的需求。我的设置如下。我有一个由行(View)组成的表(View),每一行都有一个对模型的引用。保存模型后,我想更新/渲染该行以反射(reflect)更改。如何创建在保存模型时触发的保存事件,以便更新引用该模型的表行(View)?换句话说,我希望能够执行以下操作:this.model.bin

javascript - 根据模型属性对 Backbone 集合进行排序

我有一个在表格中呈现的Backbone集合。我想根据集合具有的某些属性(如“task_status”、“task_group”)使表可排序。我一直在阅读有关collection.comparator和collection.sort的主干文档。我怎样才能完成这项工作? 最佳答案 comparator函数用于比较集合中的两个模型,它可以以任何(一致的)方式比较它们。特别是,它可以选择使用哪个模型属性,这样你就可以在你的集合中拥有这样的东西:initialize:function(){this.sort_key='id';},compar

javascript - 从自定义指令 VueJS 更新模型

我目前使用Vue.JS2.0,我想通过自定义指令从一个Vue实例更新模型,但我正在寻找一种很好的方法,这是因为我试图创建一个实现JQueryUI的自定义指令-Datepicker代码如下:Vue.directive('datepicker',{bind:function(el,binding){$(el).datepicker({onSelect:function(date){//thisisexecutedeverytimeichooseandatefromdatepicker//pop.app.date=date;//thisworkfindbutisnotdynamictopar

javascript - Backbone.js:获取模型集合并渲染它们

我正在学习使用Backbone.js进行JavaScriptMVC应用程序开发,并且在View中呈现模型集合时遇到问题。这是我想要做的:页面加载完成后,从服务器获取数据作为模型集合在View中渲染它们这就是我想要做的,这是我目前所拥有的:$(function(){"usestrict";varPostModel=Backbone.Model.extend({});varPostCollection=Backbone.Collection.extend({model:PostModel,url:'post_action.php'});varPostView=Backbone.View.e

javascript - 什么是 Meteor 并发模型?

我正在为必须更新内存中状态以响应客户端请求的Meteor应用程序编写服务器端逻辑。此应用程序需要强大的并发保证-特别是,我想确保一次只执行一个更新。我想知道Meteor的并发模型是否支持这个。文档提到Meteor是多线程的(这会是一个问题),但在四处搜索之后,我得到的印象是Meteor实际上是使用纤程(明确调度的线程)。如果那是真的,那么只要我的代码中需要原子运行的部分不进行任何Meteor调用(涉及IO并因此产生执行锁),我就是安全的。是这样吗?在哪里可以找到有关Meteor并发模型的更多信息? 最佳答案 好吧,我查看了Meteo

javascript - 如何在 JavaScript 中实现原子操作(并发模型)?

比如说,我想在每次收到ajax响应时增加一个计数器。我不知道JavaScript异步事件的并发模型。有什么想法吗? 最佳答案 在浏览器中,一次只有一个javascript线程在运行。并发问题是可能的,因为当ajax响应未决时,javascript可能会运行以响应不相关的事件。但是,如果您不在ajax调用之前启动旨在成为原子的操作并在响应处理程序中完成它,那么您是安全的。 关于javascript-如何在JavaScript中实现原子操作(并发模型)?,我们在StackOverflow上找

javascript - 为什么我的 Backbone 模型 hasChanged() 总是返回 false?

给定以下代码段:varm=newBackbone.Model({name:'joshua'});m.set('name','somethingelse');如果我现在调用m.hasChanged()或m.hasChanged('name'),我会得到false。为什么?我的理解是这两个都应该返回true。m.changedAttributes()也返回false。这是一个fiddle,它说明了我正在做的和期待的事情:http://jsfiddle.net/9cvVv/88/编辑:似乎除非你通过{silent:true;}到set()方法,然后它将在您的模型上触发change事件,清除c

javascript - 从 subview 模型修改在父级上可观察到的 knockout 的模式

我设置了父subview模型对象结构,需要从子对象更新父对象的可观察对象。我基本上想出了两种模式:1]将父属性的引用传递给子属性并从子属性中更新属性:varParentViewModel=function(){varself=this;this.selectedItem=ko.observable();this.child=ko.observable(newChildViewModel(self.selectedItem));}varChildViewModel=function(parentSelectedItem){varself=this;this.id=ko.observabl

javascript - Backbone.Collection 通过 id 获取模型

我有一个从服务器获取模型的集合。这行得通,现在我想通过MyCollection.at(0)的id获取一个模型,我得到:child_changes:Array[0]_changing:false_currentAttributes:Object_events:Object_hasComputed:true_pending:false_previousAttributes:Objectattributes:Object_id:"50ef7a63b2a53d17fe000001"author_name:"authorname"bookmark:""info:"bookmarkdescript

javascript - Three.js - 使用 scale.set() 缩放模型或增加模型大小?

在Three.js(或其他3d渲染器)中缩放3d模型的最佳做法是什么?这是我刚刚遇到的一个例子:我加载了一个模型,发现模型的尺寸太小了。然后我使用mesh.scale.set(2,2,2);缩放网格,它是完美的尺寸。在这种情况下我应该采取什么行动,是让它保持原样缩放(以编程方式缩放)还是返回我的3d建模软件并将模型的大小加倍?谢谢 最佳答案 这不是最佳实践的问题,而是优化的问题。如果你的网格总是被缩放,那么最好在你的建模软件中进行缩放。那个简单的语句mesh.scale.set(2,2,2);是一个矩阵乘法,需要在渲染的每一帧上发生