草庐IT

Flutter 项目资源便捷管理

NetWork小贱 2023-10-06 原文

Fam 特别提示

这个资产管理已经更名为 Fam ,更为详细的内容请点击这里 查看。

idkit_assets 资源管理

一、简介

idkit_assetsIDKit 系列 中处理 Flutter 项目资源的脚本文件。

二、优点

  1. 该脚本支持 Flutter 的全部平台。
  2. 该脚本可设置资源引用类的名字。
  3. 该脚本对项目的资源进行按文件名进行划分,使得看着清晰明了。
  4. 该脚本对资源文件名字进行驼峰转变,符合常规定义,避免调用时提示不完整。
  5. 该脚本对没有资源的文件进行去除注释。
  6. 该脚本对项目的资源文件进行重名检查,并输入不合合格的文件。
  7. 该脚本对 pubspec.yaml 对资源的引用进行优化,并减少代码量。
  8. 该脚本支持项目 package 之间的资源加载。
  9. 该脚本可检查项目中未使用的资源文件
  10. 该脚本可便捷删除项目中未使用的资源文件。
  11. 该脚本可过滤项目中的大的资源文件一边项目包体积优化。
  12. 该脚本支持删除项目的文件的删除,支持绝对路径和相对路径。

三、脚本的配置

  1. 在终端执行下面指令
    flutter pub global activate -sgit https://github.com/zhoushuangjian001/idkit_assets.git
    
  2. 配置电脑的环境变量
    export PATH="$PATH":"$HOME/.pub-cache/bin"
    
    注意: 一般在 .bash_profile 或者 .zshrc 或则 .bashrc 中配置。

四、脚本使用注意项

  1. 项目的资源文件的引用类的名字,由字母和数字以及下划线组成,并且必须以大写字母开头,不能包含特殊字符。
  2. 项目的图片资源的命名必须符合常规,由字母和数字以及下划线组成,必须以小写字母开头,不能包含特殊字符。

五、脚本的指令

指令 可选项 意义
idkit_assets run - 脚本的正常执行,不用在输入引用类的名字
idkit_assets -r - 同上
idkit_assets rename xx 脚本常规运行,并设置资源引用类的名字
idkit_assets -rn xx 同上
idkit_assets unused check 检查项目中未使用的资源文件
idkit_assets -uc - 同上
idkit_assets unused remove 删除项目中未使用的资源文件
idkit_assets -ur - 同上
idkit_assets filter 200 过滤项目的大资源文件,默认200KB
idkit_assets -f - 同上
idkit_assets delete xx 删除项目中指定路径的文件
idkit_assets -d - 同上
idkit_assets help - 查看脚本的使用手册
idkit_assets -h - 同上

六、脚本在实战项目中使用后的对比

  1. 整洁和层次分明

    • 使用前


      使用前
    • 使用后


      使用后
  2. 文件命名处理

    • 使用前


      使用前
    • 使用后


      使用后
  3. 项目中使用简单和提示完整

    • 使用前


      使用前
    • 使用后


      使用后
  4. 对项目pubspec.yaml 资源的引用路径优化

    • 使用前


      使用前
    • 使用后

      使用后

有关Flutter 项目资源便捷管理的更多相关文章

  1. ruby - i18n Assets 管理/翻译 UI - 2

    我正在使用i18n从头开始​​构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在ruby​​onrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi

  2. ruby - 如何在 buildr 项目中使用 Ruby 代码? - 2

    如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby​​

  3. ruby-on-rails - 项目升级后 Pow 不会更改 ruby​​ 版本 - 2

    我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby​​版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby​​版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘

  4. ruby-on-rails - 新 Rails 项目 : 'bundle install' can't install rails in gemfile - 2

    我已经像这样安装了一个新的Rails项目:$railsnewsite它执行并到达:bundleinstall但是当它似乎尝试安装依赖项时我得到了这个错误Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcheckingforlibkern/OSAtomic.h...yescreatingMakefilemake"DESTDIR="cleanmake"DESTDIR="

  5. ruby - 安装 Ruby 时遇到问题(无法下载资源 "readline--patch") - 2

    当我尝试安装Ruby时遇到此错误。我试过查看this和this但无济于事➜~brewinstallrubyWarning:YouareusingOSX10.12.Wedonotprovidesupportforthispre-releaseversion.Youmayencounterbuildfailuresorotherbreakages.Pleasecreatepull-requestsinsteadoffilingissues.==>Installingdependenciesforruby:readline,libyaml,makedepend==>Installingrub

  6. ruby-on-rails - 获取 inf-ruby 以使用 ruby​​ 版本管理器 (rvm) - 2

    我安装了ruby​​版本管理器,并将RVM安装的ruby​​实现设置为默认值,这样'哪个ruby'显示'~/.rvm/ruby-1.8.6-p383/bin/ruby'但是当我在emacs中打开inf-ruby缓冲区时,它使用安装在/usr/bin中的ruby​​。有没有办法让emacs像shell一样尊重ruby​​的路径?谢谢! 最佳答案 我创建了一个emacs扩展来将rvm集成到emacs中。如果您有兴趣,可以在这里获取:http://github.com/senny/rvm.el

  7. Ruby 从大范围中获取第 n 个项目 - 2

    假设我有这个范围:("aaaaa".."zzzzz")如何在不事先/每次生成整个项目的情况下从范围中获取第N个项目? 最佳答案 一种快速简便的方法:("aaaaa".."zzzzz").first(42).last#==>"aaabp"如果出于某种原因你不得不一遍又一遍地这样做,或者如果你需要避免为前N个元素构建中间数组,你可以这样写:moduleEnumerabledefskip(n)returnto_enum:skip,nunlessblock_given?each_with_indexdo|item,index|yieldit

  8. ruby-on-rails - Rails 3,嵌套资源,没有路由匹配 [PUT] - 2

    我真的为这个而疯狂。我一直在搜索答案并尝试我找到的所有内容,包括相关问题和stackoverflow上的答案,但仍然无法正常工作。我正在使用嵌套资源,但无法使表单正常工作。我总是遇到错误,例如没有路线匹配[PUT]"/galleries/1/photos"表格在这里:/galleries/1/photos/1/edit路线.rbresources:galleriesdoresources:photosendresources:galleriesresources:photos照片Controller.rbdefnew@gallery=Gallery.find(params[:galle

  9. ruby-on-rails - 事件管理员日期过滤器日期格式自定义 - 2

    是否有简单的方法来更改默认ISO格式(yyyy-mm-dd)的ActiveAdmin日期过滤器显示格式? 最佳答案 您可以像这样为日期选择器提供额外的选项,而不是覆盖js:=f.input:my_date,as::datepicker,datepicker_options:{dateFormat:"mm/dd/yy"} 关于ruby-on-rails-事件管理员日期过滤器日期格式自定义,我们在StackOverflow上找到一个类似的问题: https://s

  10. ruby - (Ruby || Python) 窗口管理器 - 2

    我想用这两种语言中的任何一种(最好是ruby​​)制作一个窗口管理器。老实说,除了我需要加载某种X模块外,我不知道从哪里开始。因此,如果有人有线索,如果您能指出正确的方向,那就太好了。谢谢 最佳答案 XCB,X的下一代API使用XML格式定义X协议(protocol),并使用脚本生成特定语言绑定(bind)。它在概念上与SWIG类似,只是它描述的不是CAPI,而是X协议(protocol)。目前,C和Python存在绑定(bind)。理论上,Ruby端口只是编写一个从XML协议(protocol)定义语言到Ruby的翻译器的问题。生

随机推荐