【发布时间】:2015-02-25 19:00:09
【问题描述】:
我似乎不明白以下内容:
我有一个使用敲除组件的 html 页面,请参见下面的代码:
HTML:
<h2>Home</h2>
<p data-bind='text: message'></p>
<examlist params="list: StartList"></examlist>
所以将参数传递给examlist
在我的淘汰考试列表组件视图模型中:
define(['knockout', 'text!./examlist.html'], function(ko, templateMarkup) {
function Examlist(params) {
this.message = ko.observable('Hello from the examlist component!');
this.typeOfList = params.list;
console.log(this.typeOfList);
我的控制台出现错误:
未捕获的 ReferenceError:未定义 StartList
examlist html 标签标记:
<h2>examlist</h2>
<p data-bind='text: message'></p>
这是为什么?
在我的视图模型中,我可以直接访问 params.list 以获取 if 语句吗?
提前感谢您的帮助。
问候,
【问题讨论】:
-
这个考试清单标签是什么?有兴趣了解
-
我还是看不懂你的html。你可以发布小提琴吗?
-
您在 HTML 中使用了“StartList”,但它没有在 JS 中定义?
-
你不需要一行 this.StartList = ko.observableArray(params.list)
-
如果你需要传入一个字符串,只需传入一个字符串:
<examlist params="list: 'StartList'"></examlist>注意''周围的单引号'StartList'否则 KO 将 StarList 视为属性名称,你会得到这个异常
标签: knockout.js parameter-passing knockout-components