0

我似乎不明白以下内容:

我有一个使用敲除组件的 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

考试清单 html 标记标记:

<h2>examlist</h2>

<p data-bind='text: message'></p>

为什么是这样?

在我的视图模型中,我可以直接访问 params.list 以获取 if 语句吗?

提前感谢您的帮助。

问候,

4

1 回答 1

0

您需要带有要绑定的列表的视图模型,例如

function MainViewModel() {
    this.list1 = [1, 2, 3];
    this.list2 = ["test", "it", "work"];
}

var viewModel = new MainViewModel();

ko.applyBindings(viewModel);

比你可以绑定参数像

<examlist params="list: list1"></examlist>
<examlist params="list: list2"></examlist>

或者只是显式传递值数组:

<examlist params="list: [5, 6, 7]"></examlist>

工作样本

于 2015-02-25T10:35:30.057 回答