jjzjj

Knockout

全部标签

javascript - 无法运行 knockout

我是knockoutjs的完全菜鸟,我从一开始就遇到了问题。我已完成安装指南中描述的所有操作,但无法正常工作。我的HTML:YourTasksFirstname:Lastname:我的View模型-包含在myTasks.js文件中:functionAppViewModel(){this.firstName="Bert";this.lastName="Bertington";}ko.applyBindings(newAppViewModel());我得到的是:Firstname:Lastname:以上代码是第一个knockoutjs教程中使用的代码。为什么我不能运行它?我知道我错过了一些

javascript - Knockout.js - 传递参数

我对Knockout.js有疑问。我想将用户名传递给一个函数并在警报时显示它。奇怪的事情正在发生。每次我用正确的用户名刷新页面时,我都会收到警报,但在我点击它后,我没有得到任何响应。这里有什么问题?这是我的代码:和self.userClick=function(x){alert(x);} 最佳答案 click绑定(bind)接受单击控件时要调用的回调函数。但是在您的示例中,您改为调用该函数。因此,每次加载页面时,都会加载绑定(bind)并在编写时调用您的函数。您需要将它包装在一个函数中,这样它就不会被那样调用。

javascript - knockout 可见绑定(bind)不起作用

我有一个非常简单的View模型:varViewModel=function(){this.showRow=ko.observable(false);this.toggleVisibility=function(){if(this.showRow==true){this.showRow=false;}else{this.showRow=true;}alert('showRowisnow'+this.showRow);//onlyherefortesting};};同样简单的标记:ToggleSomeText我的问题是,当点击链接时,警告框显示(显示正确的值-true/false)但是,t

javascript - 如何使用 knockout.js 制作单页应用程序?

您如何组织View模型类?单独的类还是一个巨大的类(以及如何模块化这个巨大的类)?如何在“页面”之间切换(当然是用ajax加载数据)?如何在页面加载后加载backbonejs的模板?只要示例和教程比他们网站上的示例和教程更高级,我们将不胜感激。 最佳答案 哇,很多问题都集中在一个问题上了。我会尝试在这里打他们,但免责声明我正在为PluralsightonKnockout编写整个类(class)......所以我不能深入你需要一个评论框:)1)你如何组织模型-View类?我认为你的意思是View模型类。我建议创建一个包含页面所需的所有

javascript - knockout 。如何计算可观察数组内更改的数据

请看我的文字。我尝试使用knockoutjs的observableArray和foreach来计算数组的数据。示例1工作正常:如果您更改字段中的数据,则计算总和。但是示例2不起作用。Example1Example2functionvm(){//CalcExample1varself=this;self.fnum1=ko.observable(1);self.fnum2=ko.observable(2);self.ftotsum=ko.computed(function(){returnparseFloat(self.fnum1())+parseFloat(self.fnum2());}

javascript - 如何将 Knockout js 模型绑定(bind)到向导式 UI

我正在使用Knockoutjs。我有一个包含对象数组的View模型,我想允许用户使用向导样式界面编辑其中一个对象。我遇到的问题是向导会根据所做的选择显示不同的步骤。例如:如果用户在第1步选择"is",那么我会显示第2a步如果用户在第1步选择“否”,那么我会显示第2b步(即不同的对话框形式)这样下去,通过向导的路径就不是线性的了。我的问题是我是否在启动时将所有可能的向导UI步骤绑定(bind)到View模型,即使某些步骤永远不会显示并且某些屏幕上的绑定(bind)无效(例如步骤5可能绑定(bind)到viewModel.theObject.PropertyA.PropertyB.Prop

javascript - 在 knockout.js 中设置组合选项文本

我想在我的optionsText字段中组合两个返回值,我认为这很简单,但我显然错了。我还为普通View模型之外的选项字段使用了一个值。原文如下:这工作正常,显示此人的名字并将值设置为姓氏。下一段会抛出一个错误:未捕获的TypeError:对象#的属性“FirstName”不是函数 最佳答案 您确定FirstName和LastName是可观察的?如果你不确定,试试这个:optionsText:function(item){returnko.unwrap(item.FirstName)+'-'+ko.unwrap(item.LastNa

javascript - 具有命名模板的 Knockout 3.2 组件?

我正在尝试使用knockout3.2.0中的新组件系统。目前没有太多文档,但这确实有效。ko.components.register('price-input',{template:'price-input'})但是template绑定(bind)允许您指定一个已经存在于DOM中的模板名称,例如:price-input然后你可以这样做:所以我尝试了这个:ko.components.register('price-input',{template:{name:'price_input'}})但它不起作用。有没有一种方法可以将命名模板与新组件一起使用,或者它们必须是内联的或由AMD加载的。

javascript - Knockout.js 根据另一个下拉列表更改下拉列表的可能值

我在Knockout.JS中遇到以下问题:假设我有一个可观察的对象数组,在模板的帮助下呈现。它们中的每一个都有两个可观察的属性A和B。这两个属性都从下拉列表中获取它们的值(选择/选项绑定(bind))。我的问题是,当一个对象的A的选定值发生变化时,我还想更改该特定对象的B的可用(和选定)值。我似乎无法找到如何使用knockout来完成此操作。我可以使用Javascript或Jquery将处理程序分配给下拉列表A的onchange事件并手动更改B的下拉选项来解决问题-但是我真的不想用它污染我的设计:(所以请只使用knockout的工具回答我...谢谢! 最佳答

javascript - 在 knockout.js 中使用 mustache 模板

我想使用knockout.js,但不幸的是我不能使用jquery-tmpl,因为jquery1.4.2是我们无法升级到的先决条件(我不会在这里深入讨论)。有没有人知道如何开始使用带有挖空功能的Mustache模板?我发现很难找到有关它的任何信息。 最佳答案 更新我已经发布了用于使用mustache作为模板库的knockoutjs模板引擎的初始版本。您可以在https://github.com/WTK/ko.mustache.js查看你看过这部分文档了吗http://knockoutjs.com/documentation/templ