2016-11-03 10 views
0

Возможно ли получить доступ к родительским данным из связанной с данными функции в JsViews?Как получить доступ к родительским данным в JsViews связанному с данными методу

{^{for sections}} 
... 
{^{for itemTypes}} 
    <tbody> 
     <tr> 
     <td>{^{:label}}</td> 
     <td>{^{if addable==true}}<button class="btn btn-sm btn-primary" data-link="{on ~addItem}">Add an item</button>{{/if}} </td> 
     </tr> 
    </tbody> 
{{/for}} 
... 
{{/for}} 

Возможно ли получить доступ к данным раздела (родительскому) из функции addItem?

addItem: function(ev, eventArgs) { 
    var view = eventArgs.view; 
    var index = view.getIndex(); 
    var parent = ???? 
    ... 
} 

Благодаря

ответ

1

Документах предоставить соответствующую информацию в нескольких местах, таких как:

Для программного доступа в рамках метода AddItem, вы можете использовать вид API, чтобы активизировать через иерархию представления, а затем получить данные:

var section = view.parent.parent.data; 

или

var section = view.parent.get("item").data; 

В качестве альтернативы вы можете передать данные раздела вниз декларативно в качестве контекстного параметра:

{^{for itemTypes ~section=#data}} 
... 
<button ... data-link="{on ~addItem ~section}"> 

затем используйте его напрямую:

addItem: function(section, ev, eventArgs) { 
    ... 
} 
+0

Спасибо, Борис. Такой тщательный ответ и идеальное решение (ы). Я обязательно прочитаю документы более подробно сейчас! – JoshH2