我能够通过使用这样的东西来动态更新列/数据:
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();
}
它在 Chromium 中完美地作为 Dart 应用程序运行。我能够传递具有不同渲染器、属性等的新列。但是,如果我将项目作为 JS 运行,它在 Chrome 上的工作方式与预期一样,但在 FireFox 和 Safari 中都失败了。所有的列都出现了,顶部的标题都消失了。(我有一张照片,但我没有把它贴在这里的要点)。
另外,我在入口点中包含了“dart_support.js”,因为没有它,bwu_datagrid 在以 JS 运行时不会显示。
我想我的问题是:A)我是否错误地更新了列/数据?B)这是目前预期的行为吗? C)我在某处忽略了一个小细节。
提前感谢任何人都可以提供的任何帮助。