Flutter 文件、类、方法添加注释模板

简介: Flutter 文件、类、方法添加注释模板

目录

  • 文件添加注释
  • 类添加注释
  • 方法添加注释


一、文件添加注释



  • 1.1、我们创建一个dart文件的时候希望有一些对文件的注释说明,我们可以在 Android Studio的 Preferences -> Editor — File and Templates -> Dart File


image.png


  • 1.2、具体的内容


/// FileName ${NAME}
///
/// @Author ${USER}
/// @Date ${DATE} ${TIME}
///
/// @Description TODO


  • 1.3、效果如下图


image.png

二、类添加注释



  • 2.1、在Preferences —> Editor —> Live Templates -> Dart


image.png

三、方法添加注释



  • 3.1、在Preferences —> Editor —> Live Templates -> Dart 点击加号,选择 Live Template
  • 3.2、配置 Live Templates
  • Abbreviation:  模板缩写  我用的是一个   * ,这个看个人习惯
  • Description: 模板的说明
  • Expand with:   展开模板的确认键   (默认是tab   我用的是Enter回车,看个人习惯)
  • Template Text:   模板格式如下:(title:方法名        description:方法说明       param:方法参数,由于是动态的所以没有写  @param,可能存在无参数的方法     return:同参数一样的原理     updateTime:注释添加的时间     author:作者名) 自己根据需要增删


/// method_name $title$
/// author JoanKing
/// description TODO 
/// $param$ $return$
  • 我一般是只保留:title、param、return,如下


/// method_name $title$
/// description TODO 
/// $param$  $return$


  • 这时候在下面会出现 ⚠️No applicable contexts. Define     点击选择 Dart 语言变成了  Applicable in Dart xxxxxxxx. Change  即可


image.png

3.3、重要的一步,点击按钮  Edit variables :  配置 模板里面的各个参数的值 。 ( 如   在Template Text模板里面两个$ 之间的字段,都会在这里面显示)

  • title:  方法名    选择 dartMethodName()    (其他语言类似,比如java配置的时候选的是 methodName())
  • date:日期       date()
  • time:时间       time()
  • param:   参数     这个可以选择    dartMethodParameters()   这个方法返回的是一个数组。( 如果直接使用这个方法的话   模板格式需要变动,   需要换行  加个 @param )      我是用的是一个脚本,动态拼接了一下,脚本如下,复制直接填入就行:


  • @param版本
    groovyScript("def result=''; def stop=false; def params="${_1}".replaceAll('[\\[|\\]|\\s]', '').split(',').toList(); if (params.size()==1 && (params[0]==null || params[0]=='null' || params[0]=='')) { stop=true; }; if(!stop) { for(i=0; i < params.size(); i++) {result +=((i==0) ? '\r\n' : '') + ((i < params.size() - 1) ? '///@param: ' + params[i] + '\r\n' : '///@param: ' + params[i] + '')}; }; return result;", dartMethodParameters())
  • [] 版本
    groovyScript("def result=''; def stop=false; def params="${_1}".replaceAll('[\\[|\\]|\\s]', '').split(',').toList(); if (params.size()==1 && (params[0]==null || params[0]=='null' || params[0]=='')) { stop=true; }; if(!stop) { for(i=0; i < params.size(); i++) {result +=((i==0) ? '\r\n' : '') + ((i < params.size() - 1) ? '/// ' + '[' + params[i] + ']' + '\r\n' : '/// ' + '[' + params[i] + ']' + '')}; }; return result;", dartMethodParameters())


  • return:   返回值格式     这个可以选择    dartReturnType()  返回的是一个数据格式  原理同param,脚本如下:


  • @param版本
    groovyScript("def result=''; def data="${_1}"; def stop=false; if(data==null || data=='null' || data=='' || data=='void' ) { stop=true; }; if(!stop) { result += '\r\n' + '///@return: ' + data; }; return result;", dartReturnType())
  • [] 版本
    groovyScript("def result=''; def data="${_1}"; def stop=false; if(data==null || data=='null' || data=='' || data=='void' ) { stop=true; }; if(!stop) { result += '\r\n' + '/// return: [' + data + ']'; }; return result;", dartReturnType())


image.png


3.4、使用

使用是 结合刚才配置的 在方法内使用 Abbreviation (method) + Expand with (Enter) 即可自动生成注释模板



image.png

  • 3.5、注意
    提示: 这个只能在方法内生成,再Copy出去,如果直接在外面生成  无法获取到方法名称、参数、返回值。
    另外  为什么不用  // 这种注释符号,是因为  dart会有提示 ,文本的注释 更提倡 ///   这个看自己眼缘,看不顺眼的话可以改成//   需要改动的地方有   Template Text:        param:的脚本里面的拼接    return:的拼接  如下:


image.png

groovyScript("def result=''; def stop=false; def params="${_1}".replaceAll('[\\[|\\]|\\s]','').split(',').toList(); if (params.size()==1 &&(params[0]==null || params[0]=='null' || params[0]=='')) { stop=true; };if(!stop) { for(i=0; i < params.size(); i++) {result +=((i==0) ?'\r\n' : '') + ((i < params.size() - 1) ? ' * @param: ' + params[i]+ '\r\n' : ' * @param: ' + params[i] + '')}; }; return result;",dartMethodParameters())

  • return:
    groovyScript("def result=''; def data="${_1}"; def stop=false; if(data==null || data=='null' || data=='' || data=='void' ) { stop=true;}; if(!stop) { result += '\r\n' + ' * @return: ' + data; }; returnresult;", dartReturnType())


  • 提示:(由于获取  参数、返回值、方法名等方法是用Dart独有的,不适用于别的语言,所以建议直接建在Dart 分组下,这个也是Flutter方法注释模板和别的主要区别)


image.png


目录
相关文章
|
开发者
Flutter笔记:build方法、构建上下文BuildContext解析
本文主要介绍Flutter中的build方法和构建上下文对象。
454 2
Flutter笔记:build方法、构建上下文BuildContext解析
Flutter笔记:AnimationMean、AnimationMax 和 AnimationMin 三个类的用法
Flutter笔记:AnimationMean、AnimationMax 和 AnimationMin 三个类的用法
98 3
Flutter Getx 路由 until 方法帮助你跳转指定路由
不少同学都会问我,这样一个场景,当我点击商品列表,进入商品页,点击购买,支付成功后,想返回商品页,或者我的中心的订单列表。怎么做,这中间跨度了 n 个路由。 我不只一次的推荐 GetX 的 until 方法,和 offNamedUntil 方法。 我写了个 demo 今天我们就一起来看下这两个方法如何使用。
1626 0
Flutter Getx 路由 until 方法帮助你跳转指定路由
|
1月前
|
开发框架 前端开发 定位技术
Flutter框架中的插件市场及开源资源的利用方法。内容涵盖插件市场的扩展功能、时间节省与质量保证
本文深入探讨了Flutter框架中的插件市场及开源资源的利用方法。内容涵盖插件市场的扩展功能、时间节省与质量保证,常见插件市场的介绍,选择合适插件的策略,以及开源资源的利用价值与注意事项。通过案例分析和对社区影响的讨论,展示了这些资源如何促进开发效率和技术进步,并展望了未来的发展趋势。
40 11
|
1月前
|
缓存 前端开发 数据安全/隐私保护
Flutter 框架提供了丰富的机制和方法来优化键盘处理和输入框体验
在移动应用开发中,Flutter 框架提供了丰富的机制和方法来优化键盘处理和输入框体验。本文深入探讨了键盘的显示与隐藏、输入框的焦点管理、键盘类型的适配、输入框高度自适应、键盘遮挡问题处理及性能优化等关键技术,结合实例分析,旨在帮助开发者提升应用的用户体验。
45 6
|
1月前
flutter 用PUT的方式传输文件不带分隔符
flutter 用PUT的方式传输文件不带分隔符
18 4
|
6月前
|
存储 开发框架 JavaScript
深入探讨Flutter中动态UI构建的原理、方法以及数据驱动视图的实现技巧
【6月更文挑战第11天】Flutter是高效的跨平台移动开发框架,以其热重载、高性能渲染和丰富组件库著称。本文探讨了Flutter中动态UI构建原理与数据驱动视图的实现。动态UI基于Widget树模型,状态变化触发UI更新。状态管理是关键,Flutter提供StatefulWidget、Provider、Redux等方式。使用ListView等可滚动组件和StreamBuilder等流式组件实现数据驱动视图的自动更新。响应式布局确保UI在不同设备上的适应性。Flutter为开发者构建动态、用户友好的界面提供了强大支持。
115 2
|
2月前
|
搜索推荐
Flutter 中的 AnimationController 类
【10月更文挑战第18天】深入了解了 Flutter 中的 `AnimationController`类。它是构建精彩动画效果的重要基石,掌握它的使用方法对于开发具有吸引力的 Flutter 应用至关重要。
|
2月前
|
开发者
flutter:总结所有需要用到的方法与实战 (十六)
本文介绍了Flutter中路由和顶部导航的使用方法,包括简单路由、命名路由、返回及返回根路由的实现。同时,详细讲解了顶部导航的定义与属性设置,并通过实战案例展示了复杂布局、新闻列表和页面制作的思路。最后,还提供了父类向子类传递参数的方法以及如何添加依赖库。
|
4月前
|
Unix API 开发者
Flutter笔记:使用Flutter私有类涉及的授权协议问题
Flutter笔记:使用Flutter私有类涉及的授权协议问题
64 1