Тож всередині моделі у мене така структура. Нижче наведено зразок будови.
var myModel {
_id: 798698,
username: "John",
message: {
message1: "Some cool messsage",
message2: "I"m mad Ohio State lost"
}
}
Я, мабуть, використовую маріонетку з магістраллю та руль. Звичайно, я маю вигляд колекції, який спочатку був лише колекцією моделей.
var Marionette = require("backbone.marionette");
var ChatView = Marionette.ItemView.extend({
template: require("../../templates/message.hbs")
});
module.exports = CollectionView = Marionette.CollectionView.extend({
initialize: function() {
this.listenTo(this.collection, "change", this.render);
},
itemView: ChatView
});
Тоді в /message.hbs
шаблон є базовим, як цей.
<div class="message"><b>{{username}}:</b>{{message}}</div>
Добре, якщо ви подивитеся на структуру вище message
очевидно [object object]
.
Тож до питання, в якому я впевнений, це легко і очевидно, як я замикаю цей погляд на кожен об'єкт всередині message:
атрибут, так що сам шаблон є петлевим. Я думаю, що я правильно висловився.
Дивіться в ідеалі Було б непогано створити колекцію в межах моделі, але я не знав, як і предмети всередині message:
будуються ванільним способом.
Тож сказане, що я сподіваюся, що є спосіб зафіксувати ці об’єкти за допомогою магістралі / магістралі.маріонет та руль.
Дякую
Відповіді:
1 для відповіді № 1У своєму шаблоні використовуйте #each:
<div class="message">
<b>{{username}}:</b>
{{#each message}}
<div>{{this}}</div>
{{/each}}
</div>