ERROR : "Expected a value of type 'List<int>', but got one of type 'Null'"

738 Views Asked by At

Recently i'm getting this Error in flutter trying to test if Excel file been created or not.the thing is that i used the same code in one of the oldest project and worked perfectly. I'm trying to use the web Device so when i press the Button the Excel file will be created and the download will start.

here my code :

import 'package:excel/excel.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key}) : super(key: key);

  
  

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        
      body: ListView(
        children: [
           ElevatedButton(
                  child: Text(
                    "Save File",
                  ),
                  onPressed: () {
                   
                    final excell = Excel.createExcel();
                    final sheet = excell['Assets'];
                    var fileBytes = excell.save(fileName: "My_File_Name.xlsx");
                    
                  },
                ),
        ],
      )
      );
  }
}

this is the Error When i press the button :

══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════ The following TypeErrorImpl was thrown while handling a gesture: Expected a value of type 'List', but got one of type 'Null'

When the exception was thrown, this was the stack: C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/internal/js_dev_runtime/private/ddc_runtime/errors.dart 251:49 throw
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 84:3 castError
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 452:10 cast
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/classes.dart 635:14 as_C packages/archive/src/zip_encoder.dart 90:34
getFileCrc32packages/archive/src/zip_encoder.dart 135:15
addFile packages/archive/src/zip_encoder.dart 65:7
encode packages/excel/src/save/save_file.dart 36:25
[_save] packages/excel/src/excel.dart 334:20
save packages/finance_refa/main.dart 46:43
packages/flutter/src/material/ink_well.dart 1005:21
[_handleTap]packages/flutter/src/gestures/recognizer.dart 198:24 invokeCallback packages/flutter/src/gestures/tap.dart 613:48
handleTapUp packages/flutter/src/gestures/tap.dart 298:5
[_checkUp] packages/flutter/src/gestures/tap.dart 232:7 handlePrimaryPointer packages/flutter/src/gestures/recognizer.dart 563:9
handleEvent packages/flutter/src/gestures/pointer_router.dart 94:12
[_dispatch] packages/flutter/src/gestures/pointer_router.dart 139:9

C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/linked_hash_map.dart 21:13 forEach
packages/flutter/src/gestures/pointer_router.dart 137:17 [_dispatchEventToRoutes] packages/flutter/src/gestures/pointer_router.dart 123:7
route packages/flutter/src/gestures/binding.dart 445:19
handleEvent packages/flutter/src/gestures/binding.dart 425:14 dispatchEvent packages/flutter/src/rendering/binding.dart 326:11 dispatchEvent packages/flutter/src/gestures/binding.dart 380:7 [_handlePointerEventImmediately] packages/flutter/src/gestures/binding.dart 344:5 handlePointerEvent packages/flutter/src/gestures/binding.dart 302:7 [_flushPointerEventQueue] packages/flutter/src/gestures/binding.dart 285:32 [_handlePointerDataPacket] C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/platform_dispatcher.dart 1075:13 invoke1 C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/platform_dispatcher.dart 185:5 invokeOnPointerDataPacket C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 130:39 [_onPointerData] C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 543:18
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 496:21
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 210:16 loggedHandler

Handler: "onTap" Recognizer: TapGestureRecognizer#f5722 ════════════════════════════════════════════════════════════════════════════════════════════════════

1

There are 1 best solutions below

0
jonas On

It looks like you are using the third-party package Excel. The issue you are describing has been fixed in the latest null-safety branch.

To use the latest null-safety branch in your project, use this in your pubspec.yaml:

  excel:
    git:
      url: https://github.com/justkawal/excel.git
      ref: null-safety

Please pay attention that this might probably not be a stable branch / version but will temporary fix your issue.