knockout.js相关内容
这是我的场景.我正在使用敲除映射插件为我创建一个可观察的视图模型层次结构.我的层次结构中有嵌套的元素.在层次结构中的特定点,我想放置一个添加按钮以在 observablearray 中插入该元素的新空白副本.问题是我不能只说whateverArray.push(new MyObject()). 由于映射插件实际上为我创建了整个层次结构,因此我无权访问“MyObject".因此,插入新项目似乎
..
我用过 Backbone.js,我了解了 Knockout.js;然而,现在我发现了 Knockback.js.它应该从其他两个尝试中获得最好的结果.经过验证的框架.您在生产中是否有使用 Knockback 的经验?我谨慎使用它,因为它似乎还不够成熟. 解决方案 我还不会使用它.要让公司购买 KnockoutJS 已经够难的了. 我想这一切都与贵公司的规模、支持 alpha/beta
..
我正在制作一个单页应用程序,我需要在第二个视图中显示 Google 地图.我正在使用要创建地图对象的 Google 地图 API. var map = new google.maps.Map(mapId, {变焦:5,中心:新的 google.maps.LatLng(55, 11),mapTypeId: google.maps.MapTypeId.ROADMAP}); 参数 mapId 给我
..
我正在比较这些框架以在客户端进行一些计算.我真的很喜欢 AngularJS 站点上的示例.我想知道网站上的任何backbone.js 或knockout.js 专家是否愿意在他们各自的框架中重新创建该示例. 这里是 JSFiddle 为它. 小提琴代码: 数量描述成本总
..
这让我很困惑.它一定是我没有看到的小东西.我正在尝试使用 ajax 调用在淘汰赛中加载一个非常简单的 observableArray. javascript //我们使用空数组将数组绑定到视图模型属性.var 数据 = [];var viewModel = {供应商:ko.observableArray(data)};ko.applyBindings(viewModel);$(函数(){/
..
无论如何我可以告诉淘汰映射插件订阅调用某个函数的所有属性更改吗? 我意识到我可以通过这种方式手动订阅属性更改事件: var viewModel = {名称:ko.observable('foo'),}//在这里手动订阅viewModel.name.subscribe(function(newValue){//做工作}) 不过,我希望能够进行一般订阅,因为我的视图模型可能会有所不同,所以我
..
我正在使用 KO 构建 SPA(单页应用程序).该应用程序看起来像一本书,用户可以翻页. 问题在于,每次加载页面时,都会有一小段时间页面“闪烁",用户会看到页面的无样式版本.我猜这是因为很多样式都依赖于 ko 绑定,所以在 ko 完成它“魔法"之前,用户可以瞥见未样式化的代码. 是否可以判断 KO 何时完成所有绑定,然后才显示页面? 我已经设法通过在加载视图之前设置超时来部分解决
..
如何使用 KnockoutJS 添加分页? 我当前的代码是: //假设jsondata是正确传入这个函数的数据集合myns.DisplayFields = 函数(jsondata){控制台调试(jsondata);window.viewModel = {字段:ko.observableArray(jsondata),sortByName: function() {//加上我想要执行的任何自
..
为什么我们不能在下面的例子中直接使用this而不是self? function SeatReservation(name, initialMeal) {var self = this;self.name = 姓名;self.meal = ko.observable(initialMeal);} 回复后,我了解到: 是的,如果课堂上没有上下文切换,则不需要. 但我将使用这种方法作为“
..
我找到了加载外部模板的引擎、插件和函数,但我想知道是否有更简单的方法来做到这一点.像这样吗? 模板.html
这是一个div index.html $(document).ready(function() {$("#templateContainer").load("templates.html");} 这行得通吗?有什么“陷阱"吗? 解决方案
..
我正在开发一个网站,该网站在用户在输入文本框中输入一些文本后自动将搜索结果填充到表格中(类似于谷歌即时搜索). 当用户通过添加 输入信息时,我设法让淘汰赛 js 更新视图模型 valueUpdate: 'afterkeydown' 到我的数据绑定属性中,但是,我还需要处理用户右键单击并将一些文本粘贴到文本框中的情况,所以我尝试了: valueUpdate: ['afterke
..
我正在尝试用新内容替换 observableArray 中项目的所有内容. var oldLocation = ko.utils.arrayFirst(self.locations(), function (item) {返回 item.id == value.id;});self.locations.replace(self.locations.indexOf(oldLocation), ne
..
我正在使用 Knockout 和 Knockout Mapping 插件. 我的 MVC3 操作直接返回一个视图而不是 JSON,因此我将我的模型转换为 JSON. 这是一个数据输入表单,由于系统验证的性质,所有验证都在服务层完成,并在 ViewModel 的响应对象中返回警告. 初始绑定和更新工作正常,这是导致我出现问题的“更新后"行为. 我的问题是在调用 AJAX POST 并
..
我目前正在研究 ASP.NET MVC 解决方案,并且最近引入了 Knockout(一个 MVVM JS 库)和 Wijmo(一组 jQuery UI 小部件). 随着 Knockout 的引入,我还需要在客户端拥有模型,因此为此我将 C# ViewModel 序列化并使用 data-model="@Model.ToJson() 将其附加到视图".这让我可以从 JS 中检索模型,并将一些客户
..
我目前正在开发一个应用程序,该应用程序由于功能众多而不断扩大.在这里,我将提供一些示例代码以供理解. 函数测试(){var self = this/* 定义属性 */self.TaskSection = ko.observable()../* 定义获取请求 */self.GetTasks = function(){}../* 定义发布请求 */self.PostTask = function()
..
我需要在表格中显示 $index+1. 如果我只使用$index,所有元素都会从0开始,我需要从1开始. 这是淘汰赛的文档:http://knockoutjs.com/documentation/foreach-binding.html 在那里你可以找到这个例子: 人物
位置名称 :
..
我有一个包含一个 observable 的 viewmodel,它用一个对象初始化.此对象本身包含可观察对象. 我的目标是在该对象发生变化时(或:当该对象中的任何可观察对象发生变化时)收到通知 jsfiddle 复杂对象: var ns = ns ||{};ns.ComplexObj = 函数(项目){var self = this;如果(!项目){项目 = {};}self.
..
我想知道knockoutjs是否可以在绑定时传递参数. 我正在绑定一个复选框列表,并希望绑定到我的视图模型中的单个计算 observable.在我的视图模型中(基于传递给读取函数的参数),我想根据某些条件返回真/假. var myViewModel=function(){this.myprop=ko.computed({读取:函数(){//想在这里接收一个参数来执行我的逻辑并根据参数返回.
..
既然我正在使用 RequireJS,如何在 Chrome 控制台中访问 KnockOut ViewModel 变量? 在使用 RequireJS 之前,我遵循命名空间模式,将所有内容隐藏在一个全局中.我可以通过在 Chrome 控制台中输入以下内容来访问全局:window.namespaceVar. 但是现在我使用 RequireJS,我所有的变量都隐藏在 require 函数后面.
..
我最近开始了解 Knockout,我认为这是一个很棒的框架.不过我有一个顾虑. 我发现在非平凡的绑定情况下,我的视图(标记)中有一些 javascript 代码片段.事实上,Knockout 文档中的很多代码示例也证明了这一点. 这是否会使 Knockout 本身显得突兀? 我是否应该接受它的现状而不是在实践中担心? 或者我应该采用什么模式/技术来让 Knockout 不引
..