Flutter web app跨平台 Error: Not found: ‘dart:html‘

Flutter web app跨平台 Error: Not found: ‘dart:html‘,第1张

Error: Not found: ‘dart:html’ 编译代码时,不知道 dart sdk的代码是否会被调用。手机、浏览器运行时的 flutter sdk 含有的库不同 手机 flutter sdk中没有 dart:html 或 js 这种library。 所以手机代码运行到这个 import dart:html; 就会报错 ```Error: Not found: ‘dart:html’``web的sdk没有 dart.library.io库具体库看下文介绍 解决办法 import包的时候区分下平台,是手机还是浏览器。怎么区分呢? 1. 查询是否包含 平台特定的包

写sdk的export导出类,用sdk的import,一个道理哈。

export 'src/web.dart' if (dart.library.io) 'src/model.dart';
如果有 dart.library.io 就导入 model.dart, 如果没有该库 用默认文件web.dart非浏览器的平台(手机、服务器、命令行)sdk才有这个库 2. 根据 逻辑表达式 返回 true、false做区分

code

import "a.dart" if (condition) "b.dart";
// 执行命令时,赋值
dart -Dcondition=true myapp.dart
如果condition为true 那就导入 b.dart 文件,如果为false则导入默认的a.dart类似C语言通过 编译器间的设置的变量判断的 Flutter不同平台的库 官方文档dart.library.io
/// - Servers
/// - Command-line scripts
/// - Flutter mobile apps
/// - Flutter desktop apps

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/994659.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存