[TOC] 指南
资料
## # 环境检查 首先确保Dart-SDK已经正常配置。通常dart-sdk目录下有如下内容:目前自动生成能力仅适用于严格的build函数,请确保不包含逻辑运算,生成失败需要手工编写、修正
1 2 3 4 可以通过以下命令检查:
aven-mac-pro:dart-sdk aven$ ls bin/
dart dartanalyzer dartdoc pub utils
dart2js dartaotruntime dartfmt resources
dart2native dartdevc model snapshots
1 ## # bundle生成 在项目的根目录下,执行build_runner触发构建:
which dart2native
flutter pub run build_runner build
日志较多,可以按需过滤,执行完成后,可以看到生成的bundle文件。
1 2 3 4 5 6 7 8 文件位于
aven-mac-pro:example aven$ flutter pub run build_runner build |grep Fair
[Fair] Compile lib/page/zhihu/my_page.dart into bundle…
[Fair] Compile lib/page/hello_world.dart into bundle…
[Fair] Compile lib/page/layout_sugar_page.dart into bundle…
[Fair] New bundle generated => build/fair/lib_page_layout_sugar_page.fair
[Fair] New bundle generated => build/fair/lib_page_zhihu_my_page.fair
[Fair] New bundle generated => build/fair/lib_page_hello_world.fair
build/fair
目录下,可以取出.fair文件,通过网络或者内置在App中使用:
## # bundle使用
通过FairWidget引用bundle资源,更高级的用法请参考demo。
1 2 3 4 ## # 约束 目前bundle能力并不完善,可能会出现错误,如果遇到可以反馈。 无论是bundle编写还是生成,都不能包含逻辑运算,Fair当前只能处理静态的布局渲染。 ← 编写组件映射表 模板语法【实验】 →
FairWidget(
path: 'http://xxx.com/resource.json',
name: 'demo',
)