5

要素のリストがありtext、新しい要素をドラッグするときにリストを自動的に一番下までスクロールしたいと考えています。

以下の例は、リスト内の要素を 1 回ドラッグ アンド ドロップすると、適切に機能します。

observableドラッグの前に一度電話する必要があると思います。

と を使用dragulaしてdom-autoscrollingいます。

import {takeUntil} from "rxjs/internal/operators/takeUntil";
import * as autoScroll from 'dom-autoscroller';

const drake = this.dragulaService.find(this.dragulaBagName);
this.dragulaService.drag.pipe(
  takeUntil(this.destroyed$),
).subscribe(([bag, movingEl, containerEl]) => {
  autoScroll(containerEl.parentNode, {
    margin: 20,
    pixels: 10,
    scrollWhenOutside: true,
    autoScroll: function () {
      return this.down && drake && drake.drake && drake.drake.dragging;
    }
  });
});

どうやら、this.downコールバックautoScrollは最初にfalseに設定されているようです...一度ドラッグアンドドロップすると、正しく動作します。

何か案は?

4

1 に答える 1