次のようなものを使用して、列/データを動的に更新できました。
void setDV(List<Column> cols, List<DataItem> datum) {
print('setColnData cols.length: ${columns.length}, datum.length: ${data2.length}');
this.data2.clear();
print("--1: ${data2.length}");
if(this.columns.length < 1){
this.columns = cols;
grid.setColumns = columns;
}
datum.forEach((e) => this.data2.add(e));
print("--2: ${data2.length}");
grid.invalidate();
}
Dartアプリとして完璧にChromiumで動作します。異なるレンダラー、プロパティなどで新しい列を渡すことができます。しかし、プロジェクトを JS として実行すると、Chrome では期待どおりに動作し、FireFox と Safari の両方で失敗します。すべての列がぎゅうぎゅう詰めに表示され、上部のヘッダーがすべてなくなります。(写真はありますが、ここに掲載するほどのポインテージがありません)。
また、エントリポイントに「dart_support.js」を含めています。これがないと、JS として実行中に bwu_datagrid が表示されないからです。
私の質問は次のとおりだと思います: A) 列/データを間違って更新していますか? B) 今のところ、これは予期された動作ですか... C) どこかで細部を見落としていました。
誰でも提供できるヘルプを事前に感謝します。