最近、Excelファイルが作成されたかどうかをテストしようとしてフラッターでこのエラーが発生しました。最も古いプロジェクトの1つで同じコードを使用し、完全に機能したことです。Web デバイスを使用しようとしているので、ボタンを押すと Excel ファイルが作成され、ダウンロードが開始されます。
ここに私のコード:
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");
},
),
],
)
);
}
}
これは、ボタンを押したときのエラーです:
══╡ジェスチャーによってキャッチされた例外╞══════════════════════════════════════════ジェスチャの処理中に次の TypeErrorImpl がスローされました: タイプ 'List' の値が必要でしたが、タイプ ' の 1 つを取得しましたヌル'
例外がスローされたときのスタック: 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 キャスト
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 パッケージ/archive/src/zip_encoder.dart 90:34
getFileCrc32packages/archive/src/zip_encoder.dart 135:15
addFile packages/archive/src/zip_encoder.dart 65:7
エンコード パッケージ/excel/src/save/save_file.dart 36:25
[_save] パッケージ/excel/src/excel.dart 334:20
パッケージを保存/finance_refa/main.dart 46:43
パッケージ/flutter/src/material/ink_well .dart 1005:21
[_handleTap]packages/flutter/src/gestures/recognizer.dart 198:24 invokeCallback パッケージ/flutter/src/gestures/tap.dart 613:48
handleTapUp パッケージ/flutter/src/gestures/tap.dart 298 :5
[_checkUp] パッケージ/flutter/src/gestures/tap.dart 232:7 handlePrimaryPointer パッケージ/flutter/src/gestures/recognizer.dart 563:9
handleEvent パッケージ/flutter/src/gestures/pointer_router.dart 94:12
[ _dispatch] パッケージ/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
ルート packages/flutter/src/gestures/binding.dart 445:19
handleEvent パッケージ/flutter/src/gestures/binding.dart 425:14 dispatchEvent パッケージ/flutter/src/rendering/binding.dart 326:11 dispatchEvent パッケージ/flutter/src/gestures/binding.dart 380:7 [_handlePointerEventImmediately] パッケージ/ flutter/src/gestures/binding.dart 344:5 handlePointerEvent パッケージ/flutter/src/gestures/binding.dart 302:7 [_flushPointerEventQueue] パッケージ/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.ダーツ 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ハンドラー: "onTap" レコグナイザー: TapGestureRecognizer#f5722 ══════════════════════════════════════════════════ ══════════