44 前端实现前端使用vue框架进行开发主要实现了用户管理、课程管理、学生管理、教师管理、作业管理、考试管理等功能。用户管理模块的前端代码如下:
<template>
<div class="user">
<el-card>
<h3 slot="header">用户管理</h3>
<el-input v-model="searchText" placeholder="请输入关键字搜索" class="search-input" clearable></el-input>
<el-table :data="userList" stripe>
<el-table-column prop="id" label="用户ID" width="100"></el-table-column>
<el-table-column prop="username" label="用户名" width="120"></el-table-column>
<el-table-column prop="role" label="角色" width="80"></el-table-column>
<el-table-column label="操作" width="120">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="editUser(scope.row)">编辑</el-button>
<el-button type="danger" size="small" @click="deleteUser(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination
class="pagination"
:current-page="currentPage"
:page-size="pageSize"
layout="total, prev, pager, next"
:total="total"
@current-change="handleCurrentChange"
></el-pagination>
<el-dialog :visible.sync="dialogVisible" title="编辑用户" width="40%">
<el-form :model="editForm" :rules="rules" ref="editForm" label-width="100px">
<el-form-item label="用户名" prop="username">
<el-input v-model="editForm.username" disabled></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="editForm.password" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="角色" prop="role">
<el-radio-group v-model="editForm.role">
<el-radio :label="'admin'">管理员</el-radio>
<el-radio :label="'teacher'">教师</el-radio>
<el-radio :label="'student'">学生</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="submitForm('editForm')">确 定</el-button>
</div>
</el-dialog>
</el-card>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
name: 'User',
data () {
return {
userList: [],
searchText: '',
currentPage: 1,
pageSize: 10,
total: 0,
dialogVisible: false,
editForm: {
username: '',
password: '',
role: ''
},
rules: {
password: [{ required: true, message: '请输入密码', trigger: 'blur' }],
role: [{ required: true, message: '请选择角色', trigger: 'change' }]
}
}
},
computed: {
...mapGetters([
'isAdmin'
])
},
mounted () {
this.getUserList()
},
methods: {
getUserList () {
// 获取用户列表
},
editUser (row) {
// 编辑用户
},
deleteUser (row) {
// 删除用户
},
handleCurrentChange (val) {
// 分页切换
},
submitForm (formName) {
// 提交表单
}
}
}
</script
原文地址: http://www.cveoy.top/t/topic/eM89 著作权归作者所有。请勿转载和采集!