私は ng2-dragula を使用していますが、データが AJAX によって取得されたときにドラッグ アンド ドロップした後、mi コンポーネント var が更新されません。
これは私のhtmlコードです:
<div class='wrapper'>
<div class='container' [dragula]='"another-bag"' [dragulaModel]='many'>
<div *ngFor='let text of many' [innerHtml]='text'></div>
</div>
<div class='container' [dragula]='"another-bag"' [dragulaModel]='many2'>
<div *ngFor='let text of many2' [innerHtml]='text'></div>
</div>
</div>
そして、これは私のcomponent.tsです:
public many: Array<string> = ['The', 'possibilities', 'are', 'endless!'];
public many2: Array<string> = ['Explore', 'them'];
constructor(private dragulaService: DragulaService) {
dragulaService.dropModel.subscribe((value) => {
this.onDropModel(value.slice(1));
});
dragulaService.removeModel.subscribe((value) => {
this.onRemoveModel(value.slice(1));
});
}
private onDropModel(args) {
let [el, target, source] = args;
// do something else
}
private onRemoveModel(args) {
let [el, source] = args;
// do something else
}
この例では、データが静的配列であるため、DragulaModel が機能しています。しかし、この配列に ajax を入力すると、dragulaModel が機能しません。たとえば、私は ajax を実行してから、データを my many または many2 var にサブスクライブするメソッドを使用しています。
どうもありがとう!