☰
Current Page
Main Menu
Home
Home
Editing
插件开发思考
Edit
Preview
h1
h2
h3
default
Set your preferred keybinding
default
vim
emacs
markdown
Set this page's format to
AsciiDoc
Creole
Markdown
MediaWiki
Org-mode
Plain Text
RDoc
Textile
Rendering unavailable for
BibTeX
Pod
reStructuredText
Help 1
Help 1
Help 1
Help 2
Help 3
Help 4
Help 5
Help 6
Help 7
Help 8
Autosaved text is available. Click the button to restore it.
Restore Text
## 2024.01.02-2024.01.05思考 1.打开IIDP项目时,会因为打开的目录不对,导致找不到apps目录,加载不了app报错(建议插件提示路径) 2.打开IIDP项目时,要设置file encodings,建议通过插件进行定制化配置 3.新建app工程,以往的方法是从别的app复制过来再做修改, * 例如修改pom文件的artifactId,修改父pom的子module * 删除复制工程自带的model和视图json文件 * 修改包名,不然和被复制的工程同一个包 * 建议通过向导生成标准app项目 4.生成getter方法的模版会因为复制,导致某些行默认加了/t,导致getter模版不能用,建议插件集成这个功能,或者是直接不用写getter,setter,因为属性如果做修改,setter/getter又要生成一次,期间不会报错,很容易忘记 5.模型中各个属性注解的用法解释缺少提示,建议插件提醒 6.跨模型调用的call方法不能强提示要传入的参数,思考下插件能否辅助提示 7.重写search方法必须要重写count方法,可以插件辅助提示 ## 2024.01.08-2024.01.12思考 8.views文件夹的menu.json文件依赖复制粘贴,考虑用插件向导辅助生成,其中 (1)menus.json可固定名称和文件类型,路径固定放在当前module的com.sie.apps.xxx.views文件夹下 (2)一级层级XXX_root_menu特征:XXX_root_menu命名,非强制,但通用,建议取com/sie/apps/xxx/app.json中的name属性,驼峰可按规律以"_"分割,后缀+_root_menu (3)一级层级XXX_root_menu中name属性:默认保持和XXX_root_menu保持一致 (4)一级层级XXX_root_menu中display_name属性:com/sie/apps/xxx/app.json中的displayName属性,中文 (5)一级层级XXX_root_menu中active属性默认可以设置为true (6)一级层级XXX_root_menu中sequence属性默认可以设置为1 (7)二级层级XXX_menu特征:XXX_menu命名,非强制,但通用 (8)二级层级XXX_menu中name属性:默认和XXX_menu保持一致,建议取模型@Model的name属性,后缀+_menu (9)二级层级XXX_menu中display_name属性:建议取模型@Model中的displayName属性,中文 (10)二级层级XXX_menu中view属性:规定取自XXX_view.json(也就是元模型对应视图文件)中的XXX_grid属性,XXX_search属性,XXX_form属性 (11)二级层级XXX_menu中sequece属性,依照模型的解析顺序,默认生成1->n的整数 (12)二级层级XXX_menu中active属性默认可以设置为true (13)二级层级XXX_menu中parent_ids属性,默认指定一级层级菜单XXX_root_menu 9.思考可否在@Model注解的属性中加一个属性,来控制模型在前端展示的顺序,因为不是强制性的属性,如果强制性则编码过程中很可能会忘记,也可以做成注释,解析后依照顺序生成menus.json中的二级菜单数据 10.views文件夹的XXX_view.json文件,其中 (1)XXX_views不可固定名称,可固定文件类型,路径固定放在当前module的com.sie.apps.xxx.views文件夹下 (2)XXX_views的前缀来自于模型@Model中的name属性 (3)XXX_views文件中的二级层级有XXX_grid,XXX_form,XXX_search,名称前缀可解析模型@Model中的name属性,后缀固定 (4)XXX_views文件中的三级层级有body,mode,model,name,type这五个元素可固定生成 (5)XXX_views文件中的三级层级中mode属性默认生成为primary (6)XXX_views文件中的三级层级中model属性默认生成为模型@Model 的name属性 (7)XXX_views文件中的三级层级中name根据二级层级中的XXX_grid,XXX_form,XXX_search属性,生成对应的XXX-表格,XXX-表单,XXX-搜索框,前缀取自@Model 的displayName属性 (8)XXX_views文件中的三级层级中type属性,根据二级层级中的XXX_grid,XXX_form,XXX_search属性,生成对应的grid,form,search固定值 11.XXX_views文件中的三级层级中body属性中 (1)XXX_grid下: 1)type属性跟随grid的后缀,固定为grid 2)tbar属性默认生成,包含新增和删除两个按钮 3)buttons属性默认生成,包含详情和编辑按钮 4)columns属性中 ○ name通过解析模型中java属性的变量名来默认生成 ○ displayName通过解析模型中@Property 中的displayName来默认生成 (2)XXX_form下: 1)type属性跟随grid的后缀,固定为form 2)tabs默认生成为[](todo了解一下有值场景) 3)columns属性中 ○ name通过解析模型中java属性的变量名来默认生成 ○ displayName通过解析模型中 ○ @Property 中的displayName来默认生成 ○ ER注解中的displayName来默认生成 (3)XXX_search下: 1)type属性跟随grid的后缀,固定为form 2)columns属性中 ○ name通过解析模型中java属性的变量名来默认生成 ○ displayName通过解析模型中 ○ @Property 中的displayName来默认生成 ○ ER注解中的displayName来默认生成
Uploading file...
Sidebar
[[_TOC_]]
Edit message:
Cancel