elementui
观察上面展示所有学生信息时,使用了自己的table标签。。但是界面太丑。 这里提供了elementui布局界面框架。 让你的网页更加好看。非常适合前端功底比较差的人。
1 安装
<%--
Created by IntelliJ IDEA.
User: ldh
Date: 2024/10/16
Time: 10:37
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
<%--vue--%>
<script src="/js/vue.js"></script>
<%--axios--%>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<%--elementui--%>
<!-- 引入样式 -->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<!-- 引入组件库 必须在引入vue文件后 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
</head>
<body>
<div id="app">
<%--
el-table:表示elementui的表格组件
:data 绑定了vue的数据
border: 边框
style: 100%
--%>
<el-table
:data="students"
border
style="width: 100%">
<%--
el-table-column: 表格列的标签
prop: 绑定的数据的属性
label: 列标题
width: 列的宽度
--%>
<el-table-column
prop="id"
label="编号"
>
</el-table-column>
<el-table-column
prop="name"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="age"
label="年龄">
</el-table-column>
<el-table-column
prop="gender"
label="性别">
</el-table-column>
<el-table-column
prop="birthday"
label="初始日期">
</el-table-column>
<el-table-column
prop="classInfo.name"
label="班级">
</el-table-column>
</el-table>
</div>
</body>
<script>
let app = new Vue({
el: "#app",
data: {
students: undefined,
},
created() {
this.loadStudent();
},
methods: {
loadStudent() {
axios.get("/student/list").then(resp => {
if (resp.data.code === 200) {
this.students = resp.data.data;
}
})
}
}
})
</script>
</html>
2 删除操作
<%--
Created by IntelliJ IDEA.
User: ldh
Date: 2024/10/16
Time: 10:37
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
<%--vue--%>
<script src="/js/vue.js"></script>
<%--axios--%>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<%--elementui--%>
<!-- 引入样式 -->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<!-- 引入组件库 必须在引入vue文件后 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
</head>
<body>
<div id="app">
<%--
el-table:表示elementui的表格组件
:data 绑定了vue的数据
border: 边框
style: 100%
--%>
<el-table
:data="students"
border
style="width: 100%">
<%--
el-table-column: 表格列的标签
prop: 绑定的数据的属性
label: 列标题
width: 列的宽度
--%>
<el-table-column
prop="id"
label="编号"
>
</el-table-column>
<el-table-column
prop="headimg"
label="头像"
>
<template slot-scope="scope">
<img :src="scope.row.headimg" width="80"/>
</template>
</el-table-column>
<el-table-column
prop="name"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="age"
label="年龄">
</el-table-column>
<el-table-column
prop="gender"
label="性别">
</el-table-column>
<el-table-column
prop="birthday"
label="初始日期">
</el-table-column>
<el-table-column
prop="classInfo.name"
label="班级">
</el-table-column>
<%--fixed:固定右边--%>
<el-table-column
label="操作"
width="220"
>
<template slot-scope="scope">
<el-button size="medium" type="success">编辑<i class="el-icon-setting el-icon--right"></i></el-button>
<el-button size="medium" type="danger" icon="el-icon-delete" @click="del(scope.row.id)">删除</el-button>
</template>
</el-table-column>
</el-table>
</div>
</body>
<script>
let app = new Vue({
el: "#app",
data: {
students: undefined,
},
created() {
this.loadStudent();
},
methods: {
loadStudent() {
axios.get("/student/list").then(resp => {
if (resp.data.code === 200) {
this.students = resp.data.data;
}
})
},
// 删除
del(id) {
this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => { //确认时执行代码块
axios.delete("/student/delete?id=" + id).then(resp => {
if (resp.data.code === 200) {
this.$notify({
title: '成功',
message: resp.data.msg,
type: 'success'
});
this.loadStudent();
} else {
this.$notify({
title: '错误',
message: resp.data.msg,
type: 'error'
});
}
})
}).catch(() => {//取消时执行代码块
});
}
}
})
</script>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构