基本的に、削除アクションに視覚化を追加しようとしています。
そして、コードは次を使用しています:
{{#each wrappedRecords as |record|}}
{{#fade-element}}
{{record.name}}
<span class="remove" {{action "removeRecord" record}}></span>
</span>
{{/fade-element}}
{{/each}}
そのため、removeRecord アクションがトリガーされ、レコードがWrappedRecordsから削除されます。
そして今、フェード要素コンポーネントのラッパーに。willDestroyElement
コンポーネントの破棄をフックでキャッチします。
export default Ember.Component.extend({
willDestroyElement : function () {
var clone = this.$().clone();
clone.insertAfter(this.$());
clone.fadeOut();
},
});
ただし、次を置き換えると機能しません。
clone.insertAfter(this.$());
とclone.insertAfter(this.$().parent());
それは機能しますが、新しい問題が発生します。例えば:
2つのアイテムがあり、最初のアイテムを削除しようとすると、次のようになります
X1 (削除する) X2 (2 番目の要素) X1 (親に追加されたクローン)
ライブデモへのリンク