Chegando Marionete de layouts para compor como espinha dorsal vista
-
21-12-2019 - |
Pergunta
Eu estou tentando obter uma marionete de layout para compor como um backbone de vista.Ou seja, eu tenho declarado um elemento e um id e eu quero ele para gerar um elemento dom, com base de que.Para tal simplista elemento, parece redundante ter que fazer um modelo de stub é só isso.
HTML:
<body><div id="page"></div></body>
Código de teste:
var HeaderBar = Backbone.Marionette.Layout.extend({
tagName: "div",
id: "headerBar"
});
/*========== APP Tests ============*/
App = Marionette.Application.extend({});
var MyApp = new App();
MyApp.addRegions({
pageRegion: "#page"
});
var header = new HeaderBar();
MyApp.pageRegion.show(header);
No entanto, chamar de slides a partir do aplicativo lança o TemplateNotFoundError.
Eu estou procurando uma maneira de ter Marionete compor este, sem modelo e sem ter para controlar a função de renderização na biblioteca.
Solução
Tente com
var HeaderBar = Backbone.Marionette.Layout.extend({
template: _.template("<div></div>"),
id: "headerBar"
});
Outras dicas
Layout
s exigem um modelo, porque eles precisam para compor regiões dentro deles.Se você não estiver usando qualquer regiões com o seu layout, você não precisa usar um Layout
;use um ItemView
em vez disso:
var HeaderBar = Backbone.Marionette.ItemView.extend({
tagName: "div",
id: "headerBar"
});
Em seguida, usá-lo como normal para sua região.
Se você, no entanto, precisa regiões dentro HeaderBar
, então sim, você precisa de um modelo com um Layout
.