fix replace stateful widget with vnode