import 'dart:html'; import 'dart:ui' as ui; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; class WebView extends StatefulWidget { WebView({required this.htmlText}); final String htmlText; @override _WebViewWidget createState() => _WebViewWidget(); } class _WebViewWidget extends State { final IFrameElement _iframeElement = IFrameElement(); @override void initState() { if(kIsWeb) { _iframeElement.src = "https://mymuseum.be"; _iframeElement.style.border = 'none'; _iframeElement.style.width = '100%'; _iframeElement.style.height = '100%'; _iframeElement.innerHtml = widget.htmlText; document.body!.innerHtml = widget.htmlText; //document.title = "Privacy Policy"; //document.body. = widget.htmlText; _iframeElement.onLoad.listen((event) { // Send message to iframe when loaded _iframeElement.innerHtml = widget.htmlText; }); //ignore: undefined_prefixed_name ui.platformViewRegistry.registerViewFactory( widget.htmlText, //use source as registered key to ensure uniqueness (int viewId) => _iframeElement, ); } super.initState(); } @override void dispose() { //_webView = null; super.dispose(); } @override Widget build(BuildContext context) => widget.htmlText != null && widget.htmlText.length > 0 ? kIsWeb ? HtmlElementView( key: UniqueKey(), viewType: widget.htmlText, ) : //WebViewWidget(controller: controller!) Text("Texte"): Center(child: Text("La page internet ne peut pas ĂȘtre affichĂ©e, l'url est incorrecte ou vide")); } //_webView