Hello,
I have been trying to figure out how to make custom widgets, and as one of the examples, I just wanted to create a very simple HTML view widget. (Ultimately, I want to make a SelectableHtml widget, which is not implemented in FlutterFlow yet.) However, it throws an unknown error every time I try to compile it.
The code is very simple, as you can see:
// Automatic FlutterFlow imports
import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart';
import '/custom_code/widgets/index.dart'; // Imports other custom widgets
import '/flutter_flow/custom_functions.dart'; // Imports custom functions
import 'package:flutter/material.dart';
// Begin custom widget code
// DO NOT REMOVE OR MODIFY THE CODE ABOVE!
import 'package:flutter_html/flutter_html.dart';
class SelectableHtmlWidget extends StatefulWidget {
const SelectableHtmlWidget({
super.key,
this.width,
this.height,
});
final double? width;
final double? height;
@override
State<SelectableHtmlWidget> createState() => _SelectableHtmlWidgetState();
}
class _SelectableHtmlWidgetState extends State<SelectableHtmlWidget> {
@override
Widget build(BuildContext context) {
return Html(
data: '<h3>H3 Header</h3> <p>Sample paragraph</p>',
onLinkTap: (url, _, __, ___) => launchURL(url!),
);
}
}
Of course, I added flutter_html to the Pubspec dependencies too.
However, when I try to compile the code, I get a really long error message.
Thank you for your help in advance.
Here is the full error message:
Resolving dependencies...
chewie 1.0.0 (1.7.5 available)
csslib 0.17.3 (1.0.0 available)
! device_info_plus 9.1.0 (overridden) (10.0.1 available)
fl_chart 0.55.0 (0.66.2 available)
flutter_animate 4.1.1+1 (4.5.0 available)
flutter_html 2.1.2 (2.2.1 available)
flutter_layout_grid 1.0.6 (2.0.5 available)
flutter_markdown 0.6.18 (0.6.22 available)
flutter_math_fork 0.5.0 (0.7.2 available)
flutter_svg 0.23.0+1 (2.0.10+1 available)
font_awesome_flutter 10.6.0 (10.7.0 available)
geolocator 10.1.0 (11.0.0 available)
geolocator_web 2.2.1 (3.0.0 available)
go_router 7.1.1 (13.2.1 available)
google_fonts 6.1.0 (6.2.1 available)
! http 1.2.0 (overridden) (1.2.1 available)
intl 0.18.1 (0.19.0 available)
iregexp 0.1.1 (0.1.2 available)
js 0.6.7 (0.7.1 available)
json_path 0.6.2 (0.7.1 available)
material_color_utilities 0.8.0 (0.11.1 available)
meta 1.11.0 (1.12.0 available)
numerus 1.1.1 (2.2.0 available)
path_drawing 0.5.1+1 (1.0.1 available)
path_parsing 0.2.1 (1.0.1 available)
path_provider 2.0.14 (2.1.2 available)
path_provider_android 2.0.25 (2.2.2 available)
path_provider_foundation 2.2.2 (2.3.2 available)
path_provider_linux 2.1.11 (2.2.1 available)
path_provider_platform_interface 2.0.6 (2.1.2 available)
path_provider_windows 2.1.7 (2.2.1 available)
percent_indicator 4.2.2 (4.2.3 available)
petitparser 5.4.0 (6.0.2 available)
provider 6.0.5 (6.1.2 available)
rfc_6901 0.1.1 (0.2.0 available)
shared_preferences_foundation 2.3.4 (2.3.5 available)
shared_preferences_platform_interface 2.3.1 (2.3.2 available)
shared_preferences_web 2.2.1 (2.3.0 available)
sqflite 2.2.6 (2.3.2 available)
stop_watch_timer 3.0.2 (3.1.1 available)
table_calendar 3.0.9 (3.1.0 available)
timeago 3.2.2 (3.6.1 available)
url_launcher_web 2.2.3 (2.3.0 available)
! uuid 4.3.3 (overridden)
video_player_web 2.2.0 (2.3.0 available)
wakelock 0.4.0 (0.6.2 available)
wakelock_macos 0.1.0+3 (0.4.0 available)
wakelock_platform_interface 0.2.1+3 (0.3.0 available)
wakelock_web 0.2.0+3 (0.4.0 available)
web 0.4.2 (0.5.1 available)
webview_flutter 2.8.0 (4.7.0 available)
webview_flutter_android 2.10.4 (3.16.0 available)
webview_flutter_platform_interface 1.9.5 (2.10.0 available)
webview_flutter_wkwebview 2.9.5 (3.13.0 available)
xml 5.4.1 (6.5.0 available)
Got dependencies!
54 packages have newer versions incompatible with dependency constraints.
Try flutter pub outdated
for more information.
Compiling lib/main.dart for the Web...
Compiling lib/main.dart for the Web... 43.2s
Target dart2js failed: ProcessException: Process exited abnormally with exit code 1:
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/layout_grid.dart:212:20:
Error: Inferred type argument 'AutoPlacement' doesn't conform to the bound 'Enum?' of the type variable 'T' on 'EnumProperty'.
- 'AutoPlacement' is from 'package:flutter_layout_grid/src/widgets/layout_grid.dart' ('/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/layout_grid.dart').
- 'Enum' is from 'dart:core'.
properties.add(EnumProperty('autoPlacement', autoPlacement));
^
/sdks/flutter/packages/flutter/lib/src/foundation/diagnostics.dart:2258:20:
Info: This is the type variable whose bound isn't conformed to.
class EnumProperty<T extends Enum?> extends DiagnosticsProperty<T> {
^
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/placement.dart:82:55:
Error: A value of type 'RenderObject?' can't be assigned to a variable of type 'AbstractNode?'.
- 'RenderObject' is from 'package:flutter/src/rendering/object.dart' ('/sdks/flutter/packages/flutter/lib/src/rendering/object.dart').
- 'AbstractNode' is from 'package:flutter/src/foundation/node.dart' ('/sdks/flutter/packages/flutter/lib/src/foundation/node.dart').
final AbstractNode? targetParent = renderObject.parent;
^
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/placement.dart:83:58:
Error: The method 'markNeedsPlacement' isn't defined for the class 'AbstractNode?'.
- 'AbstractNode' is from 'package:flutter/src/foundation/node.dart' ('/sdks/flutter/packages/flutter/lib/src/foundation/node.dart').
if (targetParent is RenderLayoutGrid) targetParent.markNeedsPlacement();
^^^^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/placement.dart:84:54:
Error: The method 'markNeedsLayout' isn't defined for the class 'AbstractNode?'.
- 'AbstractNode' is from 'package:flutter/src/foundation/node.dart' ('/sdks/flutter/packages/flutter/lib/src/foundation/node.dart').
if (targetParent is RenderObject) targetParent.markNeedsLayout();
^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/placement.dart:132:55:
Error: A value of type 'RenderObject?' can't be assigned to a variable of type 'AbstractNode?'.
- 'RenderObject' is from 'package:flutter/src/rendering/object.dart' ('/sdks/flutter/packages/flutter/lib/src/rendering/object.dart').
- 'AbstractNode' is from 'package:flutter/src/foundation/node.dart' ('/sdks/flutter/packages/flutter/lib/src/foundation/node.dart').
final AbstractNode? targetParent = renderObject.parent;
^
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/placement.dart:133:58:
Error: The method 'markNeedsPlacement' isn't defined for the class 'AbstractNode?'.
- 'AbstractNode' is from 'package:flutter/src/foundation/node.dart' ('/sdks/flutter/packages/flutter/lib/src/foundation/node.dart').
if (targetParent is RenderLayoutGrid) targetParent.markNeedsPlacement();
^^^^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/flutter_layout_grid-1.0.6/lib/src/widgets/placement.dart:134:54:
Error: The method 'markNeedsLayout' isn't defined for the class 'AbstractNode?'.
- 'AbstractNode' is from 'package:flutter/src/foundation/node.dart' ('/sdks/flutter/packages/flutter/lib/src/foundation/node.dart').
if (targetParent is RenderObject) targetParent.markNeedsLayout();
^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/chewie-1.0.0/lib/src/chewie_player.dart:144:18:
Error: Member not found: 'SystemChrome.setEnabledSystemUIOverlays'.
SystemChrome.setEnabledSystemUIOverlays(
^^^^^^^^^^^^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/chewie-1.0.0/lib/src/chewie_player.dart:157:20:
Error: Member not found: 'SystemChrome.setEnabledSystemUIOverlays'.
SystemChrome.setEnabledSystemUIOverlays(
^^^^^^^^^^^^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/chewie-1.0.0/lib/src/chewie_player.dart:161:20:
Error: Member not found: 'SystemChrome.setEnabledSystemUIOverlays'.
SystemChrome.setEnabledSystemUIOverlays([]);
^^^^^^^^^^^^^^^^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/chewie-1.0.0/lib/src/material_controls.dart:441:50:
Error: The getter 'accentColor' isn't defined for the class 'ThemeData'.
- 'ThemeData' is from 'package:flutter/src/material/theme_data.dart' ('/sdks/flutter/packages/flutter/lib/src/material/theme_data.dart').
playedColor: Theme.of(context).accentColor,
^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/chewie-1.0.0/lib/src/material_controls.dart:442:50:
Error: The getter 'accentColor' isn't defined for the class 'ThemeData'.
- 'ThemeData' is from 'package:flutter/src/material/theme_data.dart' ('/sdks/flutter/packages/flutter/lib/src/material/theme_data.dart').
handleColor: Theme.of(context).accentColor,
^^^^^^^^^^^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/gesture_detector_builder.dart:186:20:
Error: The argument type 'void Function(TapDownDetails)' can't be assigned to the parameter type 'void Function(TapDragDownDetails)?'.
- 'TapDownDetails' is from 'package:flutter/src/gestures/tap.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap.dart').
- 'TapDragDownDetails' is from 'package:flutter/src/gestures/tap_and_drag.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap_and_drag.dart').
onTapDown: onTapDown,
^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/gesture_detector_builder.dart:190:24:
Error: The argument type 'void Function(TapUpDetails)' can't be assigned to the parameter type 'void Function(TapDragUpDetails)?'.
- 'TapUpDetails' is from 'package:flutter/src/gestures/tap.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap.dart').
- 'TapDragUpDetails' is from 'package:flutter/src/gestures/tap_and_drag.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap_and_drag.dart').
onSingleTapUp: onSingleTapUp,
^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/gesture_detector_builder.dart:195:26:
Error: The argument type 'void Function(TapDownDetails)' can't be assigned to the parameter type 'void Function(TapDragDownDetails)?'.
- 'TapDownDetails' is from 'package:flutter/src/gestures/tap.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap.dart').
- 'TapDragDownDetails' is from 'package:flutter/src/gestures/tap_and_drag.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap_and_drag.dart').
onDoubleTapDown: onDoubleTapDown,
^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/gesture_detector_builder.dart:196:31:
Error: The argument type 'void Function(DragStartDetails)' can't be assigned to the parameter type 'void Function(TapDragStartDetails)?'.
- 'DragStartDetails' is from 'package:flutter/src/gestures/drag_details.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/drag_details.dart').
- 'TapDragStartDetails' is from 'package:flutter/src/gestures/tap_and_drag.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap_and_drag.dart').
onDragSelectionStart: onDragSelectionStart,
^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/gesture_detector_builder.dart:197:32:
Error: The argument type 'void Function(DragStartDetails, DragUpdateDetails)' can't be assigned to the parameter type 'void Function(TapDragUpdateDetails)?'.
- 'DragStartDetails' is from 'package:flutter/src/gestures/drag_details.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/drag_details.dart').
- 'DragUpdateDetails' is from 'package:flutter/src/gestures/drag_details.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/drag_details.dart').
- 'TapDragUpdateDetails' is from 'package:flutter/src/gestures/tap_and_drag.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap_and_drag.dart').
onDragSelectionUpdate: onDragSelectionUpdate,
^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/gesture_detector_builder.dart:198:29:
Error: The argument type 'void Function(DragEndDetails)' can't be assigned to the parameter type 'void Function(TapDragEndDetails)?'.
- 'DragEndDetails' is from 'package:flutter/src/gestures/drag_details.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/drag_details.dart').
- 'TapDragEndDetails' is from 'package:flutter/src/gestures/tap_and_drag.dart' ('/sdks/flutter/packages/flutter/lib/src/gestures/tap_and_drag.dart').
onDragSelectionEnd: onDragSelectionEnd,
^
/root/.pub-cache/hosted/pub.dev/flutter_math_fork-0.5.0/lib/src/widgets/selection/handle_overlay.dart:60:40:
Error: Member not found: 'fadeDuration'.
duration: TextSelectionOverlay.fadeDuration, vsync: this);
^^^^^^^^^^^^
Error: Compilation failed.
Command: /sdks/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev /sdks/flutter/bin/cache/dart-sdk/bin/snapshots/dart2js.dart.snapshot --platform-binaries=/sdks/flutter/bin/cache/flutter_web_sdk/kernel --invoker=flutter_tool -Ddart.vm.product=true -DFLUTTER_WEB_AUTO_DETECT=false -DFLUTTER_WEB_USE_SKIA=false -DFLUTTER_WEB_CANVASKIT_URL=https://www.gstatic.com/flutter-canvaskit/04817c99c9fd4956f27505204f7e344335810aed/ --native-null-assertions --no-source-maps -o /tmp/code_analysis/xbDxnfWWcxTXSVbz9rPj/custom_code_project/.dart_tool/flutter_build/49c5b010c8402a353c87d5d79f25fd1d/app.dill --packages=.dart_tool/package_config.json --cfe-only /tmp/code_analysis/xbDxnfWWcxTXSVbz9rPj/custom_code_project/.dart_tool/flutter_build/49c5b010c8402a353c87d5d79f25fd1d/main.dart
#0 RunResult.throwException (package:flutter_tools/src/base/process.dart:127:5)
Error: Failed to compile application for the Web.