以下を達成するための最良のアプローチ(Angularの方法)を探しています。メッセージのリストを含む配列があり、各メッセージには作成者の名前、テキスト、および作成時のタイムスタンプが含まれています。各メッセージは表に描かれていますが、次の場合、メッセージを積み重ねることができます。
- 現在のメッセージの作成者は前のメッセージと同じです
- 前のテーブル行の高さが、指定された制限の高さ (つまり、使用可能な高さの合計の 40%) を超えていません。
レイアウトは次のようになります。
message = { author: 'x', message: 'Hello World', timeStamp: new Date() }
table
tbody
tr( data-ng-repeat = 'message in conversation.messages | parseMessage')
td.self
div.messageAuthorProfile( style = 'background-image: url(/pictures/{{ message.author | parseAuthorEmail }}/profile/0.jpg)')
div.conversation
label.messageAuthorName {{ message.author | parseAuthorName }}
div.message
div.conversationTimeStamp
span {{ message.timeStamp | parseTimeStamp }}
div.conversationMessage
p {{ message.message }}
これは、テーブルの最後の要素を取得し、その高さを確認し、条件が満たされている場合はメッセージを追加することで、jquery を使用して「簡単に」実現できますが、純粋な Angular.js ソリューションでこの機能を実現するのに苦労しています。
これを達成するための可能な方法について、誰かが私に洞察を与えることができますか?
読んでくれてありがとう!
免責事項: 私は angular.js を使い始めて約 1 週間しか経っていないので、現在、100% jquery ベースの 2 つのプロジェクトを angular に移植することで学習していますが、オンライン ドキュメントを調査して確認した後、「クリーンなこれを達成する方法。