Vue+Element-ui实现的同学录

VUE+Element-ui实现的同学录


在这里插入图片描述

同学录介绍

随着社会发展,对于记忆的保存还是蛮重要的,毕竟也是曾经经历过的历史,也值得怀念,值得我们去回忆。

效果展示

这是代码完成实现的效果
在这里插入图片描述
可以填写里面的信息点击添加到下面表格里
在这里插入图片描述

代码实现

代码就不解释了,能看得懂就看,看不懂欢迎留言咨询,我定当给你解决哈哈哈!!!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue+Element</title>
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
    <link rel="stylesheet" href="./style/index.css">
</head>
<body>
    <div id="app">
        <h1>同学录</h1>
        <div class="head">
            <el-row :gutter="20">
                <el-col :span="6">
                    <el-input v-model="userInfo.name" placeholder="请输入姓名"></el-input>
                </el-col>
                <el-col :span="6">
                    <el-input v-model="userInfo.gender" placeholder="请输入性别"></el-input>
                </el-col>
                <el-col :span="6">
                    <el-input v-model="userInfo.phoneNum" placeholder="请输入电话号码"></el-input>
                </el-col>
                <el-col :span="6">
                    <el-date-picker
                    v-model="userInfo.birthday"
                    type="date"
                    format="yyyy 年 MM 月 dd 日"
                    value-format="yyyy-MM-dd"
                    placeholder="选择日期">
                    </el-date-picker>
                </el-row>
            </el-col>
            
            <el-button type="primary" @click="addUser" class="add-btn">添加信息</el-button>
        </div>
        <div class="body">
            <template>
                <el-table
                  :data="tableData"
                  style="width: 100%">
                  <el-table-column
                    prop="date"
                    label="序号"
                    width="180">
                    <template slot-scope="scope">
                        {{scope.$index+1}}
                      </template>
                  </el-table-column>
                  <el-table-column
                    prop="name"
                    label="姓名"
                    width="180">
                  </el-table-column>
                  <el-table-column
                    prop="gender"
                    label="性别">
                  </el-table-column>
                  <el-table-column
                    prop="phoneNum"
                    label="手机号码">
                  </el-table-column>
                  <el-table-column
                    prop="birthday"
                    label="生日">
                  </el-table-column>
                  <el-table-column
                    prop="birthday"
                    label="操作">
                    <template slot-scope="scope">
                        <el-button type="primary" icon="el-icon-edit" @click="editUser(scope.row,scope.$index)" circle></el-button>
                        <el-button type="danger" icon="el-icon-delete" @click="delUser(scope.$index)" circle></el-button>
                      </template>
                  </el-table-column>
                </el-table>
              </template>
        </div>
        <el-dialog
            title="修改信息"
            :visible.sync="dialogVisible"
            width="30%"
            :before-close="handleClose">
            <div>
                <el-form ref="form" :model="editobj" label-width="80px">
                    <el-form-item label="姓名">
                      <el-input v-model="editobj.name"></el-input>
                    </el-form-item>
                    <el-form-item label="性别">
                        <el-input v-model="editobj.gender"></el-input>
                      </el-form-item>
                      <el-form-item label="手机号码">
                        <el-input v-model="editobj.phoneNum"></el-input>
                      </el-form-item>
                      <el-form-item label="生日">
                        <el-date-picker
                            v-model="userInfo.birthday"
                            type="date"
                            format="yyyy 年 MM 月 dd 日"
                            value-format="yyyy-MM-dd"
                            placeholder="选择日期">
                        </el-date-picker>
                      </el-form-item>
                  </el-form>
            </div>
            <span slot="footer" class="dialog-footer">
                <el-button @click="dialogVisible = false">取 消</el-button>
                <el-button type="primary" @click="confirm">确 定</el-button>
            </span>
        </el-dialog>





    </div>
    <script src="https://unpkg.com/vue/dist/vue.js"></script>
    <script src="https://unpkg.com/element-ui/lib/index.js"></script>
    <script src="./javascript/index.js"></script>
</body>
</html>
new Vue({
    el:'#app',
    data:function(){
        return {
            userInfo:{  //添加用户信息
                name:'',
                gender:'',
                phoneNum:'',
                birthday:'',
            },
            tableData: [{
                name: '小明',
                gender:'男',
                phoneNum:'14562378910',
                birthday:'2020-02-23'                         
              }],
            dialogVisible: false,
            editobj:{
                name:'',
                gender:'',
                phoneNum:'',
                birthday:'',
            },
            userIndex:0,
        }
    },
    methods:{
        addUser(){
            //添加用户信息
            if(!this.userInfo.name){
                this.$message({
                    message: '请输入姓名',
                    type: 'warning'
                  });
                return;
            }
            if(!this.userInfo.gender){
                this.$message({
                    message: '请输入性别',
                    type: 'warning'
                 });
                return;
            }
            if(!/^1[3456789]\d{9}$/.test(this.userInfo.phoneNum)){
                this.$message({
                    message: '请输入正确手机号码',
                    type: 'warning'
                    });
                return;
            }
            if(!this.userInfo.birthday){
                this.$message({
                    message: '请输入生日',
                    type: 'warning'
                    });
                return;
            }
            this.tableData.push(this.userInfo);
            this.userInfo = {
                name:'',
                gender:'',
                phoneNum:'',
                birthday:'',
            };
        },
        //删除一组数据
        delUser(idx){
            //console.log(idx);
            this.$confirm('确认关闭?')
          .then(_ => {
            this.tableData.splice(idx,1);
          })
          .catch(_ => {});
        },
        //编辑数据
        editUser(item,idx){
            this.userIndex =idx;
            this.editobj={
                name:item.name,
                gender:item.gender,
                phoneNum:item.phoneNum,
                birthday:item.birthday,
            };
            this.dialogVisible = true;
        },
        handleClose(){
            this.dialogVisible = false;
        },
        confirm() {
            this.dialogVisible = false;
            Vue.set(this.tableData,this.userIndex,this.editobj);
        }
    }
})
h1{
    background: inherit;
    border-bottom: 1px dashed #097;
    color: #000099;
    font: 60px Georgia,serif;
    margin:0 0 10px;
    padding: 0 0 35px;
    text-align: center;
}
#app {
    width: 1024px;
    margin: 0 auto;
}
.add-btn {
    margin-top: 20px;
    width: 100%;
}
.body {
    margin-top: 20px;
}
VQ小总结

有什么问题可以多多指教,初学小白一枚,还有待提高。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
前台后台登陆帐号和密码都是: Login:admin password:123456 后台管理的投票管理密码是: password:123456 其余的插件管理都是管理员进入该插件后直接管理,无须密码! 即时聊天的默认管理是:“超管”。如想修改其他人为管理,可打同学录目录下的jsl.asp,找到"guanli="超管""这一行,将超管这个的名字修改为你想要做管理的人名字即可,如想加多位管理,请以,分开。注意,填入的名字是注册后的真实名字,而不是登陆帐号。 后台有部分管理连接由于尚未修改成功,所以并未添加其功能,大家点击后会出现无法显示的提示,这是正常的。出错的连接项目为:音乐列表管理、VIP管理、数据库后台管理、绿色联盟升级导航系统。 本同学录主要功能: 1.风格可以变化,即换即用! 2.个人形象设计,可以利用在同学录里发帖子发留言赚得的货币在虚拟商店内买心仪的服饰装扮虚拟形象,而且打扮好后,还可以和其他同学的虚拟形象一起合影留念。并且在班级留言的时候会在留言旁边显示出自己的形象设计。个人形象设计在登陆名字后出现的小人图案下会有一个“我的虚拟形象”可以点击该连接进入,或者在班级主页顶端的菜单--个人菜单--形象设计也可以进入。 3.娱乐休闲的在线小游戏请你来找茬,这个游戏应该没有人会不知道吧?呵呵,在班级主页顶端的菜单--班级社区--请你找茬可以点击进入该游戏,一共有205道题目。 4.在线即时聊天,这个我不再多说,明眼一看就知道怎么回事了。 5.班级投票,在班级主页右下角的位置,可以方便用来统计大家的意见的。 6.在线随机播放歌曲,进入同学录后,可以随机听到好多歌曲,如果网速慢的可以在主页顶左边位置切换到无音乐版本的同学录。一共740首歌曲,连接基本都是有效的,因为多人共享这些音乐程序,所以有时候会发现一些歌曲不能听,下一次就能听了。 7.娱乐休闲的在线小游戏成语接龙,在班级主页顶端的菜单--班级社区--成语接龙可以点击进入该游戏。 8.外贸银行,钱多了可以存到银行来哦,银行会每天支付一定比例的利息,注意,如果想在大富翁排行榜就请不要存那么多钱了!因为存了钱是不能算现金排行的!在班级主页顶端的菜单--班级社区--外贸银行可以点击进入该银行。 9.娱乐休闲的在线小游戏泡泡龙,在班级主页顶端的菜单--班级社区--泡泡龙可以点击进入该游戏。 10.娱乐休闲的祈愿祝福,在班级主页顶端的菜单--班级社区--祈愿祝福可以点击进入。 11.娱乐休闲的每日星运,在班级主页顶端的菜单--班级社区--每日星运可以点击进入。 12.娱乐休闲的海边钓鱼,在班级主页顶端的菜单--班级社区--海边钓鱼可以点击进入。 13.娱乐休闲的开心词典,在班级主页顶端的菜单--班级社区--开心词典可以点击进入。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值