0
我正在使用Marionette嘗試渲染問題列表。每個問題都可以有一個問題類型的選擇列表,這些問題類型也將來自服務器。我寧願將這個列表保留在json的頂層,而不是每個問題上。有沒有什麼方法可以循環使用ItemView中的問題,但仍然可以訪問模板中的問題類型?在Marionette中選擇列表CompositeView
我可以做到這一點作爲一個大型模板,每次重新呈現,但寧願避免這種情況。
JSON:
var json = {
questions: [
{ id: 1, questionType: "FreeText", label: "What is your name?" }
],
questionTypes: [
{ label: "Free Text", qtype: "FreeText" },
{ label: "Single Select", qtype: "Select" },
{ label: "Multi Select", qtype: "MultiSelect" }
]
};
模板:
{{#each questions}}
<div class="question-editor">
<button class="remove-question" data-id="{{this.id}}">X</button>
<label for="QuestionType">Question Type:</label>
<select name="QuestionType">
{{#each ../questionTypes}}
<option value="{{this.qtype}}" {{#isOptionSelected ../questionType this.qtype}} selected="selected" {{/isOptionSelected}}>{{this.label}}</option>
{{/each}}
</select>
<br />
<label for="Label">Label:</label>
<input type="text" name="Label" value="{{this.label}}" />
</div>
{{/each}}