2015-02-25 4 views
0

я просто не кажется, понимают следующее:Нокаут компонент Обработка параметров

У меня есть HTML-страницу, которая использует компонент нокаута см ниже код:

HTML:

<h2>Home</h2> 
<p data-bind='text: message'></p> 
<examlist params="list: StartList"></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); 

Я получаю ошибку в моей консоли:

Uncaught ReferenceError: StartList не определен

examlist HTML тегов разметки:

<h2>examlist</h2> 

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

Почему это?

И в моей модели просмотра я могу получить доступ к параметру params.list для оператора if?

Спасибо за вашу помощь заранее.

С уважением,

+0

Что такое этот ярлык экзамена? Интересно знать – DevelopmentIsMyPassion

+0

См. Edit. –

+0

Я все еще не могу понять ваш html. Можете ли вы опубликовать скрипку? – DevelopmentIsMyPassion

ответ

0

Вам нужно ViewModel со списками, чтобы сшить, что-то вроде

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

var viewModel = new MainViewModel(); 

ko.applyBindings(viewModel); 

Чем вы можете связать Params как

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

или просто передать массив значений явно:

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

Working sample

+0

Спасибо за ваш вклад, очень полезно! –