exporter throwing error when turning code to json
mike-gallego opened this issue · comments
I have not been successful building multiple widgets. Is this package made for only single widgets or can you wrap multiple widgets into one and export them? I am using version 3.0.5. Also I noticed that not all properties export into the json. For example, when I exported just the container that had decoration, it wasn't passed into the json.
Build Component
Widget _buildComponent(GlobalKey key, Widget component) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: DynamicWidgetJsonExportor(key: key, child: component),
);
}
Component:
Container(
height: 200,
margin: EdgeInsets.symmetric(horizontal: 15.0),
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(20.0)),
image: DecorationImage(
image: AssetImage('assets/weather/clear-day/bg.jpg'),
colorFilter: ColorFilter.mode(
Colors.black.withOpacity(0.75), BlendMode.dstATop),
fit: BoxFit.cover,
),
),
child: Stack(
children: [],
),
Function:
var exportor = key.currentWidget as DynamicWidgetJsonExportor;
var exportJsonString = exportor.exportJsonString();
setState(() {
json = exportJsonString;
debugPrint('the widget json: $json');
});
Log:
E/flutter ( 7669): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: type 'AlignmentDirectional' is not a subtype of type 'Alignment'
E/flutter ( 7669): #0 StackWidgetParser.export
package:dynamic_widget/…/basic/stack_positioned_widgets_parser.dart:71
E/flutter ( 7669): #1 DynamicWidgetBuilder.export
package:dynamic_widget/dynamic_widget.dart:140
E/flutter ( 7669): #2 ContainerWidgetParser.export
package:dynamic_widget/…/basic/container_widget_parser.dart:71
E/flutter ( 7669): #3 DynamicWidgetBuilder.export
package:dynamic_widget/dynamic_widget.dart:140
E/flutter ( 7669): #4 DynamicWidgetJsonExportor.exportJsonString.<anonymous closure>
package:dynamic_widget/…/basic/dynamic_widget_json_exportor.dart:27
E/flutter ( 7669): #5 ComponentElement.visitChildren
package:flutter/…/widgets/framework.dart:4681
E/flutter ( 7669): #6 Element.visitChildElements
package:flutter/…/widgets/framework.dart:3241
E/flutter ( 7669): #7 DynamicWidgetJsonExportor.exportJsonString
package:dynamic_widget/…/basic/dynamic_widget_json_exportor.dart:26
E/flutter ( 7669): #8 _DynamicExporterPageState.build.<anonymous closure>
package:kai_mobile/…/dynamic_widget/dynamic_widget_exporter_screen.dart:33
E/flutter ( 7669): #9 _InkResponseState._handleTap
package:flutter/…/material/ink_well.dart:993
E/flutter ( 7669): #10 _InkResponseState.build.<anonymous closure>
package:flutter/…/material/ink_well.dart:1111
E/flutter ( 7669): #11 GestureRecognizer.invokeCallback
package:flutter/…/gestures/recognizer.dart:183
E/flutter ( 7669): #12 TapGestureRecognizer.handleTapUp
package:flutter/…/gestures/tap.dart:598
E/flutter ( 7669): #13 BaseTapGestureRecognizer._checkUp
package:flutter/…/gestures/tap.dart:287
E/flutter ( 7669): #14 BaseTapGestureRecognizer.acceptGesture
package:flutter/…/gestures/tap.dart:259
E/flutter ( 7669): #15 GestureArenaManager.sweep
package:flutter/…/gestures/arena.dart:157
E/flutter ( 7669): #16 GestureBinding.handleEvent
package:flutter/…/gestures/binding.dart:362
E/flutter ( 7669): #17 GestureBinding.dispatchEvent
package:flutter/…/gestures/binding.dart:338
E/flutter ( 7669): #18 RendererBinding.dispatchEvent
package:flutter/…/rendering/binding.dart:267
E/flutter ( 7669): #19 GestureBinding._handlePointerEvent
package:flutter/…/gestures/binding.dart:295
E/flutter ( 7669): #20 GestureBinding._flushPointerEventQueue
package:flutter/…/gestures/binding.dart:240
E/flutter ( 7669): #21 GestureBinding._handlePointerDataPacket
package:flutter/…/gestures/binding.dart:213
E/flutter ( 7669): #22 _rootRunUnary (dart:async/zone.dart:1206:13)
E/flutter ( 7669): #23 _CustomZone.runUnary (dart:async/zone.dart:1100:19)
E/flutter ( 7669): #24 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1005:7)
E/flutter ( 7669): #25 _invoke1 (dart:ui/hooks.dart:265:10)
E/flutter ( 7669): #26 _dispatchPointerDataPacket (dart:ui/hooks.dart:174:5)
can you post all your code here? I will check it out. it seems that StackWidgetParser's export method has some bugs.
@mikeyyg96 please try the latest version 3.0.6
Updating to latest version 3.0.6 works for me :)