flutter - 是否存在一个 Flutter 文件的实验工作流程?
问题描述
动机
我想尽早清理我的 Flutter 目录,而不是事后才想到。我知道,几年后,我将拥有数十个甚至数百个样本、实验和半心半意的尝试,无论是我自己的还是来自 SO 或其他地方的。然后我想清理所有这些并只保留实际的源文件。
我不想为每个样本收集 500KB,包含 400 到 2000+ 个文件(取决于目标平台的数量)并在以后清理,我想现在进行设置,以便从一开始就清理干净,而不是清理-稍后需要 up 。
问题
我是一个(坚定地致力于 [是的,“总有这样一个”])正在学习 Flutter 的 Emacs 用户。在试验时我输入
flutter create newproject
(edit lib/main.dart in Emacs)
(compile and run)
然后我输入
> du -hs newproject
460K newproject
我知道中间文件——无论目标是 iOS、Android 还是网络——都必须保存在某个地方。尽管如此,这些中间文件至少在学习阶段是完全可以丢弃的,而且逻辑只适合一个文件这一事实非常令人钦佩,这是对 XML+Java/Kotlin 或 XML-Storyboard+ 编码的巨大改进迅速。
是否存在可以让我说的工作流程:这个目录由 30 个不同main.dart
的 s 组成;我会根据一个文件从命令行运行一些东西,休息 30 秒,然后在生成中间文件时回来?
需要明确的是,在我这边编写一个简短的脚本来做到这一点是完全容易的。在这里,我想知道我是否可以避免重新发明轮子,特别是我所做的任何事情肯定会比(半)官方解决方案少得多。
解决方案
你可以接近你想要的flutter create
。如果您指定所有相同的参数,它将尝试重建而不是每次都替换所有内容。它会根据需要覆盖 iOS/Android 文件,但不会覆盖main.dart
.
一种方法如下。您可以在单个项目中的 ( lib/main1.dart
, , ...)中保留任意数量的实验。lib/main2.dart
您将保留所有“中间”文件。然后,您可以通过键入来运行不同main.dart
的文件,例如,flutter run -d "<device>" lib/main2.dart
来自同一个项目。
从技术上讲,你所有的 Dart 文件仍然属于同一个项目,但你一次只启动一个屏幕。您正在启动的屏幕将独立于lib
.
但是,每次您运行 onemain_n.dart
时,它都会替换手机上现有的应用程序(它们都将具有与在本机方面定义的应用程序 ID 相同的应用程序 ID)。这适合快速试验,但不适合实际发布。
推荐阅读
- php - 每天更新一次php脚本
- wordpress - 如何使用 php 和 .htaccess 创建从文件夹到子域的内部重写
- java - 如何在 Java 1.6 的非 gradle 项目中使用 sonarlint
- rspec - RSpec::ExampleGroups::AdminOrdersController:Class 的未定义方法“设置”
- c++ - VScode 检查器中 C++ 变量的自定义表示
- database - 如何优化 DynamoDB 查询响应时间?
- flutter - 我怎么能在这个屏幕的底部有文本?
- node.js - RXJS:具有基于时间戳数组的自定义时间/时钟的调度程序
- linux - ioremap、地址和与 TrustZone 的关系
- javascript - Typescript/Javascript 中的访问对象