百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

《若依ruoyi》第十二章:Ruoyi 代码生成(低代码)vue逻辑详解一

ztj100 2024-11-13 14:02 15 浏览 0 评论

本章节详细介绍前端代码生成配置界面的实现,包括界面展示逻辑和api接口

一.代码目录结构

代码存放在/src/views/tool/gen下
  1. basicInfoForm:基础信息。
  2. editTable:数据库表字段编辑。
  3. genInfoForm:生成信息,生成的模版,现在提供的模版包含单表模版,树表模版,还有主表模版。生成的类名称,存放类的路径,对应的菜单配置。
  4. importTable:从数据库表选择需要生成代码的表,导入待生成代码表。
  5. index:生成代码列表,展示已经配置好的待生成的数据库记录,可以下载生成的代码,也可进行配置编辑,代码生成的菜单入口

二.菜单与index的入口配置说明

1、路由组件

如下图,左侧是代码目录结构,右侧是管理后台的菜单管理(系统管理-》菜单管理)。

点击列表记录(菜单管理)右侧编辑,系统弹出菜单配置的详细信息。

其中组件路径对应代码view目录下面的tool/gen/index

该配置的逻辑是:

1)、点击菜单后

2)、vue读取菜单对应的组件路径,并完成调用路由,进入index的业务代码

2、spring 对权限的过滤

菜单配置的权限字符,当该角色配置了菜单权限,用户登录后,点击菜单后调用java接口获取数据,spring 首先验证码用户是否有权限,实现的逻辑通过注解@PreAuthorize来实现。如果判断用户拥有权限,则继续执行,如果用户未拥有权限,则拒绝访问接口。

三.index代码详解

1、顶部搜索框代码,主要由el-input(输入表单),el-button(按钮)组成

2、操作按钮

下面以其中一个生成按钮为例子进行说明:

element的布局方式与bootstrap原理是一样的,将网页划分成若干行,然后每行等分为若干列,基于这样的方式进行布局,形象的成为栅栏布局。

区别是element可将每行划分为24个分栏,而bootstrap是划分为12个分栏,从使用角度,还是24个分栏更加精细。

首先每行使用<el-row>标签标识,然后每行内的列使用<el-col>标识,至于每列整行的宽度比例,则使用:span属性进行设置。

//gutter:每行的间隔是10
<el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        //el-button按钮,@click="handleGenTable" 点击时候调用handleGenTable
        //方法
        <el-button
          type="primary"
          plain
          icon="el-icon-download"
          size="mini"
          @click="handleGenTable"
				//用户登录后,会将用户权限字符加载到本地内存,如果判断有权限,则显示,没有权限
				//则该按钮不显示
          v-hasPermi="['tool:gen:code']"
        >生成</el-button>
      </el-col>
</el-row>

按钮权限如下图

4、列表展示

如下图,在列表显示使用el-table组件进行显示,其中表格的数据通过:data进行绑定。

 <el-table v-loading="loading" :data="tableList" @selection-change="handleSelectionChange">


tableList的数据获取函数

//点击菜单后,vue对index进行初始化操作,开始调用 this.getList();的方法
//getlist方法调用后台接口获取参数并将接口数据赋值给tableList变量
created() {
    this.getList();
  },
    
/** 查询表集合 */
getList() {
  this.loading = true;
  listTable(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
      this.tableList = response.rows;
      this.total = response.total;
      this.loading = false;
    }
  );
},

持续跟新中,敬请期待!

四、未来计划

1、ruoyi非分离版本拆解

2、ruoyi-vue-pro:讲解工作流

3、ruoyi-vue-pro:支付模块,电商模块

4、基于ruoyi-vue-pro项目开发

5、JEECG低代码开发平台

请关注我,本星球会持续推出更多的开源项目代码解析,如有更好的意见请留言回复或者私信

相关推荐

WPS 隐藏黑科技!OCT2HEX 函数用法全攻略,数据转换不再愁

WPS隐藏黑科技!OCT2HEX函数用法全攻略,数据转换不再愁在WPS表格的强大函数库中,OCT2HEX函数堪称数据进制转换的“魔法钥匙”。无论是程序员处理代码数据,还是工程师进行电路设计...

WPS 表格隐藏神器!LEFTB 函数让文本处理更高效

WPS表格隐藏神器!LEFTB函数让文本处理更高效在职场办公和日常数据处理中,WPS表格堪称我们的得力助手,而其中丰富多样的函数更是提升效率的关键。今天,要为大家介绍一个“宝藏函数”——LEF...

Java lombok 使用教程(lombok.jar idea)

简介Lombok是...

PART 48: 万能结果自定义,SWITCH函数!

公式解析SWITCH:根据值列表计算表达式并返回与第一个匹配值对应的结果。如果没有匹配项,则返回可选默认值用法解析1:评级=SWITCH(TRUE,C2>=90,"优秀",C2...

Excel 必备if函数使用方法详解(excel表if函数使用)

excel表格if函数使用方法介绍打开Excel,在想输出数据的单元格点击工具栏上的“公式”--“插入函数”--“IF”,然后点击确定。...

Jetty使用场景(jetty入门)

Jetty作为一款高性能、轻量级的嵌入式Web服务器和Servlet容器,其核心优势在于模块化设计、快速启动、低资源消耗...

【Java教程】基础语法到高级特性(java语言高级特性)

Java作为一门面向对象的编程语言,拥有清晰规范的语法体系。本文将系统性地介绍Java的核心语法特性,帮助开发者全面掌握Java编程基础。...

WPS里这个EVEN 函数,90%的人都没用过!

一、开篇引入在日常工作中,我们常常会与各种数据打交道。比如,在统计员工绩效时,需要对绩效分数进行一系列处理;在计算销售数据时,可能要对销售额进行特定的运算。这些看似简单的数据处理任务,实则隐藏着许多技...

64 AI助力Excel,查函数查用法简单方便

在excel表格当中接入ai之后会是一种什么样的使用体验?今天就跟大家一起来分享一下小程序商店的下一步重大的版本更新。下一个版本将会加入ai功能,接下来会跟大家演示一下基础的用法。ai功能规划的是有三...

python入门到脱坑 函数—函数的调用

Python函数调用详解函数调用是Python编程中最基础也是最重要的操作之一。下面我将详细介绍Python中函数调用的各种方式和注意事项。...

Excel自定义函数:满足特定需求的灵活工具

...

从简到繁,一文说清vlookup函数的常见用法

VLOOKUP函数是Excel中常用的查找与引用函数,用于在表格中按列查找数据。本文将从简单到复杂,逐步讲解VLOOKUP的用法、语法、应用场景及注意事项。一、VLOOKUP基础:快速入门1.什么是...

Java新特性:Lambda表达式(java lambda表达式的3种简写方式)

1、Lambda表达式概述1.1、Lambda表达式的简介Lambda表达式(Lambdaexpression),也可称为闭包(Closure),是Java(SE)8中一个重要的新特性。Lam...

WPS 冷门却超实用!ODD 函数用法大揭秘,轻松解决数据处理难题

WPS冷门却超实用!ODD函数用法大揭秘,轻松解决数据处理难题在WPS表格庞大的函数家族里,有一些函数虽然不像SUM、VLOOKUP那样广为人知,却在特定场景下能发挥出令人惊叹的作用,OD...

Python 函数式编程的 8 大核心技巧,不允许你还不会

函数式编程是一种强调使用纯函数、避免共享状态和可变数据的编程范式。Python虽然不是纯函数式语言,但提供了丰富的函数式编程特性。以下是Python函数式编程的8个核心技巧:...

取消回复欢迎 发表评论: