【发布时间】:2021-04-23 18:03:42
【问题描述】:
我正在使用Flutter-web,我想导出一个 pdf。我正在使用pdf 包,我正在尝试从他们的文档中实现一个简单的示例。更具体地说,我有一个名为export_pdf.dart 的文件,其中的代码如下。
import 'package:pdf/pdf.dart';
import 'package:pdf/widgets.dart';
import 'package:universal_io/io.dart';
import 'package:path_provider/path_provider.dart';
exportPdf() async {
final pdf = Document();
pdf.addPage(Page(
pageFormat: PdfPageFormat.a4,
build: (Context context) {
return Center(
child: Text("Hello World"),
); // Center
})); // Page
final output = await getTemporaryDirectory();
final file = File("${output.path}/example.pdf");
await file.writeAsBytes(await pdf.save());
}
当我通过单击按钮调用exportPdf() 函数时,出现以下错误。
未捕获(承诺)错误:MissingPluginException(无实现 在通道上找到方法 getTemporaryDirectory plugins.flutter.io/path_provider)
我一直在寻找这个问题很长时间,但没有解决这个问题。
即使 path_provider 包被导入,getTemporaryDirectory() 也不会被调用,就像它不存在一样。
我还需要提到我使用的是universal_io,而不是dart:io,因为我使用的是flutter_web。
这个错误出现在我正在调用的每个函数中,并且存在于path_provider/path_provider.dart 文件中。我还在path_provider/path_provider.dart 中添加了一个简单的打印功能,但我收到一个错误,提示找不到该方法。
感谢您的宝贵时间。
【问题讨论】:
标签: flutter dart flutter-web