1、Bug修改
当点击后,跳转到添加页面,再点击,医院的数据并不会。
这里涉及到vue中,vue-router导航切换时,如果两个路由都渲染同个组件,组件的(created或者mounted)不会再被调用, 组件会被重用,显示上一个路由渲染出来的自建。
可以简单的在 router-view上加上一个唯一的,来保证路由切换时都会重新触发生命周期方法,确保组件被重新初始化。·
修改 文件如下:
通过生成动态,每次路由发生变化时都会重新渲染。这种方法可以避免因为路由导致的缓存问题,从而确保页面在切换时正确刷新。
接着之前在add.vue的created方法中,在判断完是否存在id值()后,添加一个语句,即如果执行的是添加操作,则,将属性赋值为空。
2、数据字典介绍
就是管理系统分类数据或者一些固定数据,例如:省市区三级联动数据、民族数据、行业数据、学历数据等,由于该系统大量使用这种数据,所以我们要做一个方便管理系统数据,一般系统基本都会做数据管理。
表设计及分析
创建数据库,里面创建表,以下除了(、、字段外)
是级别最高的,所以它的id是,并且没有;对应、、,他们属于其下属级别。
对应用户填写的信息。表示医院等级是
的作用是对应这一分类,因为它们的parent_id都为,不好单独区分,所以可以根据编码来获取指定类型数据()。
3、搭建service-cmn模块
和搭建service-hosp类似
在后端创建模块,首先仿照service-hosp,创建配置文件
创建启动类。添加好和注释和方法
再创建、、、文件夹
其中config中创建配置类,用于指定接口所在的包路径以及集中声明管理
在model模块已经创建了对数据字典实体类的封装(),对应其表结构(),所以在mapper接口()创建时,继承BaseMapper,指定泛型为它即可
封装类的额外操作
- 如果希望在前端使用element-ui创建的表格中呈现效果,类似于下拉选项,则必须提供来指定哪些行是包含子节点
- 所以在实体类的创建中,需要多添加一个boolean类型属性,来表示是否有子节点
- 但是在数据库中并无该字段,所以需要在该属性上添加注解
- 其是 MyBatis-Plus 框架中的一个注解,用于在实体类的字段上标记该字段不与数据库表中的任何字段对应`
紧接着在service文件夹创建接口和对应的
在controller文件夹创建DictController,实例化类,设置、等注解
4、数据字典接口-列表功能
在创建对应接口函数
- 根据数据id查询子数据列表
思路是设置请求方式为,在url中获取值,再根据id查找对应的集合
其中,根据id查询对应集合的功能,需要在中声明该方法,并在中实现该方法,逻辑是创建QueryWrapper对象构建条件,判断利用方法实现效果,并根据wrapper返回集合List。
这里还需要一个功能是判断id下是否有子节点,这关系到字段的值设置。
接着在中调用该方法,利用集合遍历,并根据集合中的id它们作为别人的子节点,是否自己也有子节点。
在测试时需要注意:
- 运行时运行的是的,而不是之前8201的了,否则开启的是8201的端口,打不开对应的swagger页面
- 在两个模块同时声明同一个mybatis-plus插件时,即Spring Boot 应用中定义了两个同名的 ,由于 Spring Boot 默认不允许 Bean 名称冲突,因此应用启动失败。
- 解决方法:可以选择在一个配置类中 以避免命名冲突。
前端配置
第一步是在路由添加配置,主要包括定义路径、名称、跳转路径等。
其中跳转路径定义为,在定义接口调用方法
在list.vue中,依旧跟之前一致,在return中初始化变量作为数据字典列表数组,在method中创建方法,内部调用dict.js中的方法,在中,页面渲染前调用方法,并传id值为
在前端展示代码中,结合标签,解释下方内容
绑定了一个名为 list 的数据源,表格会根据这个数据源动态渲染行数据。
指定当需要加载子节点时调用的函数,这个函数会在懒加载模式下被触发,通常用于获取子节点的数据。
用于定义树形结构的数据属性,children 表示子节点的字段名,hasChildren 表示是否有子节点的字段名。
这里函数
- tree:当前树节点的数据对象。tree.id 表示当前节点的唯一标识
- treeNode:Element UI 树形表格组件传递的节点信息对象。这里并未使用,但可以包含节点的层级、状态等信息。
- resolve:一个回调函数,用于通知 el-table 加载完成的数据。将异步请求的数据通过 resolve 返回给表格进行渲染。
在测试时,需要把中的修改为8202,并且修改后需要重新启动
还碰到一个问题是,在前端路由定义时,是分为了和两个部分的,但是在显示过程中并没有下拉菜单,所以在添加
在医院等级等下面,并没有下滑按钮显示更下一层级的数据,这里考虑,在中,将原有的改为,并在文件夹中找到element-ui文件夹删除(好像不删也可以直接下载覆盖)
如果报错:参照此处
并且注意把项目关了再删除,随后即可。
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/54604.html