ma5626如何进入web配置_flutter_web初尝试
前言今年的Google I/O大会上发布了Flutter for the web第一个技术预览版,Flutter 1.5开始支持web开发,我也尝试了一下,确实是全新的体验,一套代码多端跑,确实爽!但是我也感觉到几个明显的缺点 1.编译时间太长 2.只支持官方的几个库开始现在就开始进行flutter_web的初尝试吧,全程参考 flutter_web升级flutter因为flutter从1.5版本
前言
今年的Google I/O大会上发布了Flutter for the web第一个技术预览版,Flutter 1.5开始支持web开发,我也尝试了一下,确实是全新的体验,一套代码多端跑,确实爽!
但是我也感觉到几个明显的缺点
1.编译时间太长
2.只支持官方的几个库
开始
现在就开始进行flutter_web的初尝试吧,全程参考 flutter_web
升级flutter
因为flutter从1.5版本才开始支持web开发,所以首先要把flutter升级到1.5版本及以上,第一种方法是在命令行输入
flutter upgrade
第二中方法是在AndroidStudio中进入pubspec.yaml文件,然后再右上角会出现flutter upgrade的选项,同样可以进行升级,在命令行中输入
flutter --version
看一下当前flutter的版本是否在1.5以上,至此就完成了flutter的升级
迁移代码
接下来我们就要把flutter变成flutter_web。
首先就是对pubspec.yaml进行改变,先将dependencies中之前的flutter sdk换为flutter_web,dev_dependencies也与上面相同 并且在里面加入Dart web构建系统的依赖,然后下面是因为flutter_web包没发布到pub.dartlang.org,所以用这种方式告诉下载地址,修改完之后就点右上角的get dependencies,此时就修改完毕
dependencies:
flutter_web: any
dev_dependencies:
flutter_web_test: any
build_runner: ^1.2.2
build_web_compilers: ^1.1.0
test: ^1.3.4
dependency_overrides:
flutter_web:
git:
url: https://github.com/flutter/flutter_web
path: packages/flutter_web
flutter_web_ui:
git:
url: https://github.com/flutter/flutter_web
path: packages/flutter_web_ui
flutter_web_test:
git:
url: https://github.com/flutter/flutter_web
path: packages/flutter_web_test
修改lib/中的import
将flutter变为flutter_web,比如我们之前导入的是'package:flutter/material.dart',我们修改为'package:flutter_web/material.dart',之前导入的是'package:flutter_test/flutter_test.dart',我们修改为'package:flutter_web_test/flutter_web_test.dart',等等类似的修改
创建web文件夹
创建web文件夹,再在里面分别创建index.html和main.dart,提供入口点,直接复制官方文档的代码
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script defer src="main.dart.js" type="application/javascript"></script>
</head>
<body>
</body>
</html>
main.dart(first_flutter为自己的文件名)
import 'package:flutter_web_ui/ui.dart' as ui;
import 'package:first_flutter/main.dart' as app;
main() async {
await ui.webOnlyInitializePlatform();
app.main();
}
就此web程序入口就写好了
安装flutter_web构建工具
在命令行中输入
flutter pub global activate webdev
再进入flutter中的.pub-cache/bin文件夹,看是否已经下载好构建工具webdev.bat,下载之后我们在将.pub-cache/bin的地址配置到Path环境变量中,再在命令行中输入
webdev
看是否配置成功,如果环境变量已经配置但是输入命令还是显示没有配置成功,后面就要用flutter pub global run webdev ...,配置成功就直接webdev ...
构建flutter_web
先进入自己flutter项目的文件夹,比如我进入我的项目
D:>cd D:androidfirst_flutter
然后在调用构建工具webdev
webdev serve
他会去找你的pubspec.yaml文件,然后再看你项目中使用的库flutter_web是否支持,再进行flutter_web的构建,他会显示是否构建成功,构建成功后我们就在浏览器中输入http://localhost:8080进行查看,到此一个简单的尝试就结束了。我这次迁移的项目的是上次博客写的那个实例项目,因为他全部都是用的官方库,贴上flutter_web的效果
flutter确实在一步步往他的目标前进,值得在空余时间的时候去了解一下
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)