Al intentar agregar una biblioteca js de terceros dentro de una aplicación web de Flutter, tengo un problema con las propiedades clientHeight y clientWidth :
He agregado un DivElement dentro de mi árbol de widgets con:
@override void initState() { super.initState(); divElement = DivElement() ..id = 'viewer_div' ..style.width = '100vh' ..style.height = '100vh' ..style.border = '1px solid green'; // ignore: UNDEFINED_PREFIXED_NAME ui.platformViewRegistry.registerViewFactory( 'viewer', (int viewId) => dicomElement); } @override Widget build(BuildContext context) { return Container( width: 512, height: 512, color: Colors.transparent, child: const HtmlElementView(viewType: 'viewer'), ); } El divElement es utilizado por la biblioteca js de terceros que agrega un elemento DOM de canvas como elemento secundario del div. Pero la biblioteca de terceros también establece el tamaño del lienzo de acuerdo con divElement clientWidth y clientHeight Y estos valores siempre devuelven 0, por lo que el ancho y la altura finales del lienzo se establecen en 0.
Intenté llamar al método javascript, que agrega el lienzo, después de que se haya renderizado el primer cuadro, pero no cambia nada.