Hier möchte ich auf eine Variable oder eine Liste von Variablen zugreifen, die beim Initialisieren einer neuen Ansicht von der entsprechenden Vorlage übergeben wird.Backbone.Marionette - Zugreifen auf Variablen in der ItemView-Vorlage oder CompositeView-Vorlage
Codebeispiel
Erstellen einer Listenansicht
@Taskit.module "Tasks.List", (List, Taskit, Backbone, Marionette, $, _) ->
class List.NewTask extends Taskit.Views.ItemView
template: JST["backbone/taskit/tasks/tasks/list/_templates/new_task"]
Vorlage für die oben aufgeführte Liste Ansicht
<div id="new-task-form">
</div>
initialisieren ItemView
view = new Taskit.Tasks.List.NewTask
project_id: "project_id"
Hier ist meine Frage ho w kann ich auf die Variable "project_id" von ihrer Vorlage zugreifen.
<%= project_id %> #is not working
In Backbone kann durch
$(@el).html(@template({task: @model, project_id: "project_id"}))
Es gibt templateHelpers Attribut in Marionette Ansichten, die verwendet werden können, Daten zu seiner Vorlage zu übergeben. Um Daten an ItemView zu übergeben, können Sie das Attribut itemViewOptions der Sammlungs-/Composite-Ansicht – deven98602
+1 für '' templateHelpers'' verwenden. Docs: http://marionettejs.com/docs/marionette.view.html#viewtemplatehelpers – sthzg
Marionette-Kern hier sollten Sie 'templateHelpers' verwenden, wenn Sie zusätzliche Daten in Ihrer Ansicht möchten. Verwenden Sie 'serializeData', wenn Sie die Daten in einem Modell oder einer Sammlung transformieren müssen. –