day45-46-Vue+ElementUI实现学生管理
以下是一个简化的Vue组件示例,展示了如何使用ElementUI创建一个简单的学生列表和添加学生的表单。
<template>
<div>
<el-button type="primary" @click="dialogVisible = true">添加学生</el-button>
<el-table :data="students" style="width: 100%">
<el-table-column prop="id" label="ID" width="180"></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>
<el-dialog title="添加学生" :visible.sync="dialogVisible">
<el-form :model="newStudent">
<el-form-item label="姓名">
<el-input v-model="newStudent.name"></el-input>
</el-form-item>
<el-form-item label="年龄">
<el-input v-model.number="newStudent.age"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="addStudent">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
students: [
// 初始学生列表
{ id: 1, name: '张三', age: 18 },
{ id: 2, name: '李四', age: 22 }
],
newStudent: {
name: '',
age: null
},
dialogVisible: false
};
},
methods: {
addStudent() {
const newId = this.students.length + 1;
this.students.push({ id: newId, ...this.newStudent });
this.dialogVisible = false;
this.newStudent = { name: '', age: null };
}
}
};
</script>
这个示例提供了一个学生列表和一个添加学生的对话框。用户可以点击“添加学生”按钮来打开对话框,输入学生信息后点击确定按钮将学生添加到列表中。这里使用了v-model
来绑定表单输入和newStudent
对象的属性,并通过v-model.number
确保年龄为数字类型。对话框通过visible.sync
实现开关控制。
评论已关闭