敲除组件参数处理

knockout component parameter handling

我只是似乎不明白以下内容:

我有一个 html 页面使用了挖空组件,请参见下面的代码:

HTML:

<h2>Home</h2>
<p data-bind='text: message'></p>
<examlist params="list: StartList"></examlist>

因此将参数传递给考试列表

在我的 knockout 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 语句吗?

提前感谢您的帮助。

此致,

您需要带有要绑定列表的 viewModel,例如

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>

Working sample