jjzjj

knockout-3.0

全部标签

javascript - 是否有使用 Knockout 绑定(bind)页面进行更改跟踪的标准方法?

我有一个相当复杂的网页,其中包含各种选项卡、表单、单选按钮、下拉菜单等。所有这些都使用Knockout.js绑定(bind)到通过AJAX调用加载的非常复杂的JavaScript对象。当然,用户可以随心所欲地处理内容,这时他们可以点击保存按钮将所有更改保存回服务器。我正在想出一个好的设计来准确跟踪页面上的更改,以便我可以实现保存。因此,我提出了一些可能的实现方案。选项1)只需将所有内容发回并让服务器进行整理:使用此方法,我会让Knockout仅更新数据源。Save按钮将调用.toJS()并将该数据发送回服务器。优点:它非常简单,客户端只需做很少的工作。缺点:服务器并不知道发生了什么变化

javascript - Ninja Forms 3.0 On Form Load javascript 事件

我试图找到一个javascript事件,当忍者表单准备好并加载到DOM中时,该事件会被触发。我查看了文档并在谷歌上搜索了一段时间,找不到任何东西......我正在使用NinjaForms3+(尽管2好得多......)我宁愿不运行一个间隔来检查表单是否已经加载。谢谢! 最佳答案 不幸的是,漂亮的NinjaForms插件没有正确记录。花了很多时间才找到这个解决方案(使用jQuery):jQuery(document).on('nfFormReady',function(){console.log('Formisready');//Pl

javascript - 如何使用 Knockout 禁用点击事件?

我有两个按钮,叫做这里最好的是什么?我可以在$(document).ready上使用jQuery吗?问题是数据绑定(bind)单击会在按下时禁用其他单击事件,同样。但是当我按下同一个按钮时,它会再次启用第二个按钮。所以我想用所有胡言乱语说的是,我只想一次启用一个按钮。这有可能和knockout一起合作吗?如果是这样,请告诉我如何。PS:我在knockout网站上看​​过enable,没看懂。我应该如何让它充分发挥作用? 最佳答案 当我们有这样的代码时,knockoutjs启用功能将起作用最初两个链接都处于事件状态。如果您单击任何一个

javascript - 将 Polymer 1.0 项目升级到 Polymer 3.0 的最佳方式

我们有一个包含数百个元素的巨大Polymer1.0项目,想知道将所有内容升级到3.0的最佳方法是什么。是先升级到2.0还是直接升级到3.0?也有任何好的指南可用,因为关于这方面的Polymer文档似乎不是很好。也有promise自动升级的工具,但无处可寻,有人知道吗? 最佳答案 有polymer-modulizer直接从Polymer2.x转换为3但由于您使用的是polymer1,因此转换结果肯定需要人工审核。有一件事需要提及,polymer2已经支持polymer-1的遗留元素样式,因此polymer-modulizer有可能将p

javascript - iPhone OS 3.0 中使用 webkit-transform translate() 的慢速动画

iPhoneOS3.0中的JavaScript处理有什么变化吗?此代码适用于Safari4PublicBeta和iPodTouch2.0,但不适用于装有iPhoneOS3.0的iPodtouch。目的是在2秒内将框向右移动一点,但在3.0中它只是跳到新位置,没有动画或延迟。iPhoneJStesting.box{position:absolute;width:150px;height:150px;background-color:red;-webkit-transition-property:-webkit-transform;-webkit-transition-duration:2

javascript - knockout JS : Update/Insert data to a viewModel using mapping

我已经尝试解决这个问题很长一段时间了。我找不到任何解决此问题的方法,但如果我错了,请纠正我。问题:我有来自JSONAPI的数据,具有嵌套数组/对象结构。我使用映射最初用我的数据填充模型。要更新它,我想在新数据到达时扩展模型,或者更新现有数据。据我所知,映射选项键应该对我有用,但我可能误解了映射选项的功能。我已经归结了这个例子要表示的问题:varuserMapping={key:function(item){returnko.utils.unwrapObservable(item.id);}};//JSONcallreplacedwithvaluesvarviewModel={users

javascript - knockout : Change css class based on value of observable

我在可观察数组上使用foreach:如您所见,我将可用性的当前值传递给函数availabilityCssClass,该函数将该值与一些预定义的字符串进行比较。根据匹配的字符串,它返回一个类名。self.availabilityCssClass=ko.computed(function(value){varavailability=value;if(availability==="Busy"||"DoNotDisturb"||"BeRightBack")return"leftStatusCellColorOrange";elseif(availability==="Away"||"Off

javascript - 使用 Typescript 和 requirejs 时我应该把我的 Knockout.js 扩展放在哪里

我正在将一些javascript代码移植到typescript并使用requirejs。我有一个config.ts://fileconfig.ts//////require.config({baseUrl:'/scripts/App/',paths:{'jQuery':'/scripts/jquery-1.9.1','ko':'/scripts/knockout-2.2.1','signalR':"/scripts/jquery.signalR-1.0.1",},shim:{jQuery:{exports:'$'},signalR:{deps:["jQuery"]},ko:{deps:

javascript - Knockout js - 获取可观察的字符串长度

这似乎是一个简单的问题,但我似乎无法弄清楚我只需要显示可观察到的字符串的长度。我尝试使用ko.computed()函数实现结果,如下面的代码所示,但它始终返回零。FiddlewithanexampleHTMLThetitleis:Thelengthis:Lengthfromcomputed:JavaScriptfunctionVM(){varself=this;self.title=ko.observable();self.titleLength=ko.computed(function(){returnself.title.length;});}ko.applyBindings(VM

javascript - knockout 映射插件中的奇怪内存泄漏

在View模型是使用knockout.mapping插件创建的情况下,无法弄清楚为什么处理计算的可观察对象不会从全局变量中删除订阅。首先让我们看看直接创建模型时会发生什么://Globalvariable.varEnvironment={currencyStr:ko.observable("usd.")};//Itemmodel,usedintensively.functionItemModel(price){varself=this;this.price=ko.computed(function(){//Computedissubscribedtoglobalvariable.ret