Flutter添加方法注釋模板

在Android Studio(Mac端)中添加Dart的方法注釋模板。整體步驟是和設(shè)置JAVA一樣的,主要是模板幾個參數(shù)不太一樣。

1、設(shè)置路徑? Preferences — Editor — Live Templates

2、新建一個 Live Templates

由于獲取? 參數(shù)、返回值、方法名等方法是用Dart獨有的,不適用于別的語言,所以建議直接建在Dart 分組下,這個也是Flutter方法注釋模板和別的主要區(qū)別

????????

3、配置 Live Templates

Abbreviation:? 模板縮寫 ?我用的是一個?? * ,這個看個人習慣
Description: 模板的說明
Expand with:?? 展開模板的確認鍵?? (默認是tab?? 我用的是Enter回車,看個人習慣)
Template Text: ? 模板格式如下:(title:方法名????????description:方法說明 ? ? ??param:方法參數(shù),由于是動態(tài)的所以沒有寫? @param,可能存在無參數(shù)的方法 ??? return:同參數(shù)一樣的原理 ??? updateTime:注釋添加的時間 ????author:作者名) 自己根據(jù)需要增刪

///@title $title$
///@description TODO $param$ $return$
///@updateTime $date$ $time$
///@author TongYu

這時候在下面會出現(xiàn) ??No applicable contexts. Define ? ? 點擊選擇 Dart 語言
變成了? Applicable in Dart xxxxxxxx. Change? 即可


還有重要的一步,點擊按鈕? Edit variables :? 配置 模板里面的各個參數(shù)的值 。 ( 如$param$?? 在Template Text模板里面兩個$ 之間的字段,都會在這里面顯示)
title:? 方法名??? 選擇 dartMethodName()??? (其他語言類似,比如java配置的時候選的是 methodName())
date:日期?????? date()
time:時間?????? time()
param:?? 參數(shù)???? 這個可以選擇??? dartMethodParameters()?? 這個方法返回的是一個數(shù)組。( 如果直接使用這個方法的話?? 模板格式需要變動, $param$? 需要換行? 加個 @param )????? 我是用的是一個腳本,動態(tài)拼接了一下,腳本如下,復(fù)制直接填入就行:

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:?? 返回值格式 ??? 這個可以選擇??? dartReturnType()? 返回的是一個數(shù)據(jù)格式? 原理同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())

??

4、使用

????? 使用是 結(jié)合剛才配置的? ? 在方法內(nèi)使用?? Abbreviation (* 號) +?? Expand with (Enter) ??????? 即可自動生成注釋模板

5、注意

?????? 讓強迫癥難受的是? 這個只能在方法內(nèi)生成,再Copy出去,如果直接在外面生成? 無法獲取到方法名稱、參數(shù)、返回值。
?????? 另外? 為什么不用? /**/ 這種注釋符號,是因為? dart會有提示 ,文本的注釋 更提倡 ///?? 這個看自己眼緣,看不順眼的話可以改成/**/?? 需要改動的地方有?? Template Text:??????? param:的腳本里面的拼接??? return:的拼接? 如下:

Template Text:
/*
?* @title $title$
?* @description TODO $param$ $return$
?* @updateTime $date$ $time$
?* @author TongYu
*/

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())

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())

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容