执行导航代码时,下面的类with toupdate as (
select t.*, row_number() over (order by (select null)) as seqnum
from dbo.table t
)
update toupdate
set idpep = 'IDP' + RIGHT('000000' + CAST(seqnum + 1 AS VARCHAR(6)), 6);
中的build
函数会被调用两次。 TestWidget
在控制台上打印两次
有谁知道为什么会这样?
Test Widget
导航代码:
class TestWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
print("Test Widget");
return new Scaffold(body: new Text("TEST WIDGET"),);
}
}
路线定义:
Navigator.of(context).pushNamed(AppRoutes.fieldData);`
答案 0 :(得分:1)
这是因为动画而发生的。
当在页面中拖动路线时,构建内容以使渲染的面部被动画化,然后,当它到达原位时,它将再次重建。
您可以清楚地看到它在您的构建函数中放置调试中断并尝试导航到这样的路径:它将在路径即将进入时首先停止 - 但仍然不可见 - ;然后当它结束时。