Dart元素.append()进入无限循环

Dart元素.append()进入无限循环,dart,infinite-loop,Dart,Infinite Loop,我以前有一大堆Dart代码运行良好,因此我的代码中没有bug。然而,现在,在最新的Dart SDK(0.7.3.1R27487)中,下面这行代码使我的代码进入无限循环: document.body.append(SomeElement) 当我注释掉这一行时,没有输入循环,但是我创建的组件没有显示(没有附加到DOM) 有人有什么想法吗?我在网上看到,人们提到其他库函数在特定情况下进入无限循环。但是,没有提到append() 任何指导都将不胜感激。 谢谢 下面是围绕崩溃行的main()中的代码。省略

我以前有一大堆Dart代码运行良好,因此我的代码中没有bug。然而,现在,在最新的Dart SDK(0.7.3.1R27487)中,下面这行代码使我的代码进入无限循环:

document.body.append(SomeElement)

当我注释掉这一行时,没有输入循环,但是我创建的组件没有显示(没有附加到DOM)

有人有什么想法吗?我在网上看到,人们提到其他库函数在特定情况下进入无限循环。但是,没有提到append()

任何指导都将不胜感激。 谢谢

下面是围绕崩溃行的main()中的代码。省略了传入init()的各种参数的定义。document.body.append()行是导致无限循环的原因

void main() {
Function log_fun = (p_g,p_m) => print('$p_g:$p_m');
log_fun('FUN_ENTER','test.main()');

List<Map> posts_infos_by_pages_lst = test_data.get_test_data(log_fun);
visGroup_paged_scroll.init(draw_element_fun,
                           get_elements_pages_info_fun,

                           //called whenever visGroup_scroll loads new pages
                           //p_onNewPagesLoad_fun
                           () {},

                           //p_onComplete_fun
                           (DivElement                p_visGroup_scroll_element,
                            visGroup_paged.PagesCache p_pages_cache,
                            int                       p_total_pages_num,
                            int                       p_visGroup_scroll_height_int,
                            Function                  p_visGroup_pages_display_fun) {
                                document.body.append(p_visGroup_scroll_element);                                    
                           },
                           log_fun,
                           p_scroll_container_height_px : 600,
                           p_scroll_container_width_px  : 1000,                  
                           p_scroll_bar_width_px        : 80);
void main(){
函数log_fun=(p_g,p_m)=>print(“$p_g:$p_m”);
log_-fun('fun_-ENTER','test.main()');
按页面列出帖子信息\u lst=test\u数据。获取测试数据(log\u fun);
visGroup_paged_scroll.init(绘制元素),
获取\u元素\u页面\u信息\u乐趣,
//每当visGroup_滚动加载新页面时调用
//p_onNewPagesLoad_fun
() {},
//p_onComplete_fun
(DivElement p_visGroup_scroll_element,
visGroup_paged.PagesCache p_pages_缓存,
整版总页数,
整数p_visGroup_scroll_height_int,
功能p_visGroup_pages_display_fun){
document.body.append(p\u visGroup\u scroll\u元素);
},
日志乐趣,
p_滚动_容器_高度_px:600,
p_滚动_容器_宽度_px:1000,
p_滚动条_宽度_px:80);

这在哪里发生?main()?某个侦听器?好问题。它发生在一个onComplete回调中,而onComplete回调本身是在main()中定义的…在调用onComplete之前,会发生很多处理过程,所以我假设在那里做了一些不应该做的事情。但是,所有这些事情以前都工作过,而且所有这些处理过程都不会抛出任何异常(当我注释掉append()以防止无限循环时)。也许更多的上下文会有帮助。你能发布main()函数的相关部分吗?添加。谢谢你的帮助。如果你需要更多的细节,请告诉我。好吧,这看起来比我希望的更复杂。append()中真的发生了无休止的循环吗?还是反复调用它?