Я настроил кабель действия, теперь я хотел бы использовать следующую функцию js
$('.scroll-bar').scrollTop(row);
прокрутить чат вниз после отправки сообщения
Поэтому я попытался включить предыдущий код как в app/assets/channels/messages.js, так и в app/assets/javascripts/room.js.
Проблема в том, что после того, как я выполню app/assets/channels/messages.js, в html не будет добавлен новый тег <p></p>.
App.messages = App.cable.subscriptions.create('MessagesChannel', {
received: function(data) {
$("#messages").removeClass('hidden')
return $('#messages').append(this.renderMessage(data));
},
renderMessage: function(data) {
return "<p> <b>" + data.user + ": </b>" + data.message + "</p>";
}
});
Это мои сообщения в чате, я не могу запустить .scrollTop(row) в несуществующей строке.
Я проверил, и теги <p> добавляются после messages.js.
Я нашел временное решение для решения этой проблемы, комментируя возврат из return $('#messages').append(this.renderMessage(data)); и вызывая после метода .scrollTop(row). Решение работает, но таким образом к странице добавляется только html без тегов <p>. Почему-то renderMessage работает неправильно.
Я доступен для любой информации
Большое спасибо, Фабрицио Бертольо.

а>
