首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Flutter
订阅
皮皮虾不想说话
更多收藏集
微信扫码分享
微信
新浪微博
QQ
25篇文章 · 0订阅
Flutter 动态化热更新的思考与实践(二)----Dart 代码转换AST
我们在上一篇文章《Flutter动态化热更新的思考与实践》中探讨了在Flutter中实现动态化热更新的可行方案,在本篇文章里我们先来探讨该方案的第一阶段:如何将Dart代码转换成AST描述文件。 1. AST 简介 上一篇文章里也提到了AST,但是没有过多的来解释,那么在本篇文…
Dart 语言标准流与文件操作
stdin除了可以使用readLineSync读一行字符串,还可以使用readByteSync读取一个字节。 除了writeAsString方法外,还可以使用writeAsBytes写入一个字节列表。需要注意的是,这两个方法都是异步执行的,返回值都是Future,如果有必要,也…
[Dart翻译]为Dart Analyzer创建一个自定义插件
嗨!我叫Dmitry,是Wrike的一名前端开发人员。在这篇文章中,我会告诉你如何开发一个自定义的Dart代码分析器插件。对于那些觉得基本的Dart分析器在静态分析方面缺乏功能的人,以及那些想尝试自己开发一个简单的分析器的人来说,这篇文章会很方便。 插件是一个可执行的代码,它与…
自定义Flutter Lint插件实现自己的Dart语法规则
在网上搜索自定义Dart语法检查或自定义Dart lint最终都会导向 Customizing static analysis 这篇文档。文档中介绍了Dart Static analysis的功能和使用方式。 如在if语句使用了错误的变量名称,提示如下错误。 但是文章标题中所谓…
Flutter自动生成代码之:build/source_gen
我们可以基于 build 库自动生成代码。 编写build.yaml文件。 我们需要实现build和buildExtensions。看一个例子my_builders.dart(文末有来源)。 这个例子就是复制所有的.txt文件,得到新的.txt.copy。 web目录下的a.t…
Flutter组件化框架
军队中有“军师旅团营”,营是团的组件,师是军的组件。 国家中有“省市县乡村”,村是乡的组件,市是省的组件。 要管理复杂的结构,逐层划分组件是一个很好的方法。 本文探讨的组件化,并非以代码复用为目的。 本文关注于通过组件化,管理比较复杂的工程,提高人效,降低损耗。 代码量大编译慢…
Flutter 路由原理解析
这一次,我尝试以不贴一行源代码的方式向你介绍 Flutter 路由的实现原理,同时为了提高你阅读源码的积极性,除了原理介绍以外,又补充了两个新的模块:从源码中学习到的编程技巧,以及 阅读源码之后对实际应用开发带来的帮助。 希望这样1+2的模式,可以诱导你以非常积极的心态,很轻松…
Flutter 路由源码解析
不讲客套话啦,我们分别从Navigator的push和pop两个方法去探索源码以及一些重要的细节。 就像上篇文章有提到过的,Navigator.push是一个静态方法,使得你可以在任何地方进行调用,其内部通过of方法在Element树(BuildContext是 Element…
Flutter 弹出键盘认识
目的在于想找出键盘删除键的回调。于是有了下文: 也就是 在requestKeyboard()中,如果是有 _hasFocus == true 的时候就弹出键盘 ,(也就是获取到了焦点)。 当控件获取焦点的时候调用此函数。 上面函数打印得出 只有两个 状态 TextInputCl…