Vue使用Element-UI的table组件和后端接口进行数据交互(包含前后端代码)

news2025/1/25 4:40:17

前言

本次用element-ui的table组件,简单案例演示下前后端数据交互。

前提声明:如果不知道如何在vue中引入element-ui,可以先看下这篇文章:Vue引入并使用Element-UI组件库的两种方式

静态页面

首先先写一个静态页面吧,数据都是死的,这也是element-ui的table组件demo:

直接把代码复制到组件里面即可。

在这里插入图片描述

这样一个静态组件就写好了:

在这里插入图片描述

但是这样只是一个静态的,我们开发中往往需要通过接口进行数据交互的。所以需要调用接口把数据改成动态的

动态页面

接口支持

前提是必须有后端服务器的接口支持,我在本地简单的编写了一个用户列表接口。

在这里插入图片描述

为了保证接口正常,使用调用测试一下,就是这样的一个返回结果

注意返回结果格式,前端需要根据接口的返回格式获取内容或数据的

在这里插入图片描述

前端我使用的是axios发送请求的,如果不知道怎么引用和使用axios,可以参考这篇文章:Vue安装并使用axios发送请求

调用接口

使用axios发送请求接口数据,使用函数封装,并且在挂载钩子调用函数,这样就能在页面加载的时候展示数据了:

在这里插入图片描述

这样一个动态的table就出来了:

在这里插入图片描述

下面是相关的代码:

由于我自己封装的接口返回信息里面有一个data,所以这里需要取两层data才能得到数据!

<template>
  <el-table :data="tableData"  highlight-current-row  border stripe style="width: 100%" class="userTable">
    <!-- <el-table-column prop="id" label="id" width="90" align="center"></el-table-column> -->
    <el-table-column
      prop="userName"
      label="姓名"
      width="90"
      align="center"
    ></el-table-column>
  <el-table-column
      prop="sex"
      label="性别"
      width="90"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="account"
      label="账号"
      width="180"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="password"
      label="密码"
      width="180"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="imnage"
      label="头像"
      width="90"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="phone"
      label="手机号"
      width="130"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="remark"
      label="备注"
      width="180"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="status"
      label="状态"
      width="90"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="birthday"
      label="生日"
      width="180"
      align="center"
    ></el-table-column>
    <el-table-column
      prop="createTime"
      label="创建时间"
      width="180"
    ></el-table-column>
    <el-table-column
      prop="updateTime"
      label="修改时间"
      width="180"
    ></el-table-column>
  </el-table>
</template>

<script>
// 引入axios
import axios from "axios";
export default {
  name: "App",
  data() {
    return {
      tableData: [],
    };
  },
  methods: {
  	   // 展示用户列表      
    queryUserList() {
       axios.get('http://localhost:9090/user/queryList', 
          // 回调函数,一定要使用箭头函数,不然this的指向不是vue示例
          }).then(res =>{
            // 请求成功后的数据返回给用户列表用于展示
             this.userTableData = res.data.data;
          }).catch(error =>{
             console.log(error)
          })
    },
  },
  mounted() {
  	// 页面加载就渲染用户列表
    this.queryUserList();
  },
};
</script>

<style  scoped>

</style>



总结

这就是一个基本的前端调用后端查询,因为我是后端开发,对前端不是很专业,这是我做个人项目中遇到的一个问题。分享给你,希望对你有用

后续的话也会分享vue增删改查基本的代码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/407840.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3的vue-router路由详解

这篇文章是接着【三分钟快速搭建Vue3webpack项目】的内容做的开发&#xff0c;有基础的可以跳过 【三分钟快速搭建Vue3webpack项目】&#xff0c;直接看以下的内容。 Vue3的vue-router路由详解&#xff1a; 首先安装路由依赖模块&#xff1a; npm install vue-router4 所需…

618快到了送上自制前端小项目(html css js)

目录 &#x1f6a9;.自定义播放器 &#x1f3e0;.图片自动消失 ✨.小轮播图 &#x1f383;.旋转音乐盒 前言&#xff1a;这些小项目全都是自创的。 如果需要应用&#xff0c;或则转发的话请与 博主联系&#xff0c;感谢你们的理解&#xff0c; 1.自定义播放器 在页面中放置…

云化Web IDE,在线开发新模式

目录 前言 一、初识云IDE 二、CSDN 云IDE 1、如何使用云IDE 2、使用云IDE 三、云IDE的使用感受 四、总结 前言 工欲善其事必先利其器&#xff0c;作为程序员&#xff0c;我们在编写代码的时候&#xff0c;一定会选用一款得心应手的工具。就像行走江湖的侠客&#xff0c;手…

vue项目打包优化的方法

1.按需加载第三方库 例如 ElementUI、lodash 等 a, 装包 npm install babel-plugin-component -D b, babel.config.js module.exports {"presets": ["vue/cli-plugin-babel/preset"],"plugins": [["component",{"libraryNa…

uniapp中的分享功能实现(APP,小程序,公众号)

uniapp中的分享功能实现(APP,小程序&#xff0c;公众号) 1.APP端的分享 app端的分享可以直接使用uniapp封装的方法uni.share&#xff0c;uni-app的App引擎已经封装了微信、QQ、微博的分享SDK&#xff0c;开发者可以直接调用相关功能。可以分享到微信、QQ、微博&#xff0c;每个…

【Web前端】一文带你吃透CSS(上篇)

前端学习路线小总结: 基础入门:HTML CSS JavaScript三大主流框架:VUE REACT Angular深入学习:小程序 Node jQuery TypeScript 前端工程化一起学习CSS吧! 一.CSS简介1.什么是CSS?二.CSS语法1.语法规则2.注释三.CSS选择器

Vue打包后加载太慢,访问时间太久,记录项目的整个优化过程

问题背景 最近在做一个Vue项目时&#xff0c;在打包上线的时候发现项目部署完第一次访问时间特别慢&#xff0c;整个登录页面加载用了8-10秒&#xff0c;很明显这个速度达不到项目上线的要求&#xff0c;于是开始了对项目打包之后增快加载速度的研究。 未优化前的项目加载时间…

Vue3 响应式原理

响应式原理 Vue2 使用的是 Object.defineProperty Vue3 使用的是 Proxy 2.0的不足 对象只能劫持 设置好的数据&#xff0c;新增的数据需要Vue.Set(xxx) 数组只能操作七种方法&#xff0c;修改某一项值无法劫持。 reactive和effect的实现 export const reactive <T e…

Vue 解决报错 You are using the runtime-only build of Vue where the template compiler is not available.

报错信息 [Vue warn]: You are using the runtime-only build of Vue where the template compiler is not available. Either pre-compile the templates into render functions, or use the compiler-included build. 您正在使用Vue的仅运行时版本,并而模板编译器不可用。 可…

手把手教你如何对接支付宝支付接口(奶爸级别)

支付宝支付接口步骤&#xff1a;第一步&#xff1a;第二步&#xff1a;如何让支付宝将付款成功的通知&#xff0c;回调到你本机&#xff0c;我使用的是内网穿透&#xff1a;Natapp步骤&#xff1a; 第一步&#xff1a;准备支付宝相关的参数&#xff0c;如appId、公私钥 第二步…

vite中静态资源(css、img、svg等)的加载机制及其相关配置

什么是静态资源&#xff1f; 简单来说&#xff0c;我们开发完一个项目后&#xff0c;需要把它打包&#xff08;一般是dist文件夹&#xff09;&#xff0c;并部署在服务器上。那么&#xff0c;这个打包后的dist文件夹都是静态资源&#xff1b;在我们写项目时&#xff0c;图片、…

JS类型转换

JS中的类型转换方式一般分为三类&#xff1a;转为String型&#xff0c;转为数字型&#xff0c;转为布尔型。 一.转为String型 1.toString() 通过变量.toString()可以将其他类型的变量转换为字符串型&#xff08;null和undefined没有toString()方法&#xff09; let age 18;…

如何运行vue项目

一、 1、下载node.js 安装完成后分别在cmd中执行node -v查看是否安装成功&#xff0c;出现版本号就安装成功了 2、安装 webpack npm install webpack -g 安装完成后分别在cmd中执行npm -v查看是否安装成功&#xff0c;出现版本号就安装成功了 3、安装vue-cli脚手架 cnpm i…

【vue3】使用canvas

canvas是什么&#xff1f; 一个html5支持的新标签&#xff0c;见名知意&#xff0c;canvas就是画板的意思&#xff0c;可以在canvas上画画。css画三角形很简单&#xff0c;但是要画五角星呢&#xff0c;不妨试试canvas。 在html中使用canvas 1、canvas是html5中的一个标签。…

前端之CSS

目录 一.CSS是什么 二.CSS的基本语法规范 三.CSS的引入方式 1.内部样式 2.内联样式 3.外部样式 四.CSS的基本用法 1.基础选择器 1.1 标签选择器 1.2 类选择器 1.3 id选择器 1.4 通配符选择器 2.复合选择器 2.1 后代选择器 2.2 子选择器 2.3 并集选择器 2.4 伪类…

【实战篇】最详细的Rollup打包项目教程

介绍 本文带你一起使用 Rollup 打包项目&#xff0c;实现以下功能&#xff1a; 自动将 dependencies 依赖声明为 externals支持处理外部 npm 依赖支持基于 CommonJS 模块引入支持 typescript&#xff0c;并导出声明文件支持 scss&#xff0c;并添加前缀支持自动清除调试代码打…

怒肝最新保姆级前端学习路线,速成贴心全面!

这份学习路线并不完美&#xff0c;也不会有最终形态&#xff0c;正如前端不可预见、永无止境的未来。 大家好&#xff0c;我是鱼皮&#xff0c;肝了几天终于完成了这份保姆级前端学习路线。 &#x1f482; &#x1f4bb; &#x1f474;&#x1f3fd; 先放一张图&#xff1a…

JS原型与原型链详细解释

文章目录一、JS原型链简要解释二、JS原型链详细解释1.构造函数2.原型对象3.__proto__4.原型链总结一、JS原型链简要解释 原型是function对象上的一个属性, 它表示构造函数构造出来的对象的共有祖先, 被通过构造函数构造出来的对象上有一个__proto__属性指向该函数的prototype,…

JSON.parse和JSON.stringify的用法

平时我们在接收后端返回的json对象通常是一个字符串类型的object&#xff0c;所以一般我们要对这个object进行类型转化后&#xff0c;我们才能使用object里面的数据&#xff0c;而这其中涉及到两个必不可少的方法就是JSON.parse和JSON.stringify JSON.parse()JSON.parse()方法将…

vue 控制元素的显示和隐藏

方法&#xff1a; 使用 v-if 指令&#xff0c;通过动态的向DOM树内添加或者删除DOM元素的方式来显示或隐藏元素&#xff1b;使用 v-show 指令&#xff0c;通过设置DOM元素的display样式属性来控制显隐。v-if 指令与 v-show 指令都可以根据值动态控制DOM元素显示隐藏&#xff0…