VueJS如何實(shí)現(xiàn)用戶管理系統(tǒng)-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的和林格爾網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

這篇文章主要介紹VueJS如何實(shí)現(xiàn)用戶管理系統(tǒng),文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport"
  content="width=device-width, user-scalable=no,
  initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>用戶管理系統(tǒng)</title>
 <script src="js/jquery.js"></script>
 <script src="js/bootstrap.js"></script>
 <script src="js/vue.js"></script>
 <link rel="stylesheet" href="css/bootstrap.css" type="text/css">
 <script>
 $(function () {
  let vm = new Vue({
  el: '#app',
  data: {
   user: {},
   users: [
   {name: 'Switch', age: 25, email: 'switchvov@163.com'},
   {name: 'Kitty', age: 25, email: 'kitty@163.com'},
   ],
   nowIndex: -1, // 當(dāng)前要?jiǎng)h除項(xiàng)的索引
   delIndexes: [], // 刪除項(xiàng)索引列表
   selectAll: false, // 刪除所有
   disableDelSelect: true, // 關(guān)閉刪除選項(xiàng)
   modalTarget: '',
   modalToggle: ''
  },
  methods: {
   addUser: function () {
   this.users.push(this.user);
   this.user = {};
   },
   deleteUser: function () {
   if (this.delIndexes.length > 0) {
    // 從大到小排序,不排序則會出現(xiàn)刪除錯(cuò)亂
    this.delIndexes.sort(function (a, b) {
    return b - a;
    });
    for (let i = 0; i < this.delIndexes.length; i++) {
    this.users.splice(this.delIndexes[i], 1);
    }
    this.delIndexes = [];
    this.selectAll = false;
    return;
   }
   if (this.nowIndex === -1) {
    this.users = [];
    return;
   }
   this.users.splice(this.nowIndex, 1);
   },
   toggleAll: function () {
   if (this.selectAll) {
    let length = this.users.length;
    this.delIndexes = [];
    for (let i = 0; i < length; i++) {
    this.delIndexes.push(i);
    }
    return;
   }
   this.delIndexes = [];
   }
  },
  watch: {
   delIndexes: function () {
   if (this.delIndexes.length > 0) {
    this.disableDelSelect = false;
    this.modalTarget = '#del';
    this.modalToggle = 'modal';
    return;
   }
   this.disableDelSelect = true;
   }
  }
  });
 });
 </script>
</head>
<body>
<p id="app" class="container">
 <h3 class="text-center">添加用戶</h3>
 <form class="form-horizontal">
 <p class="form-group">
  <label for="name" class="control-label col-sm-2 col-sm-offset-2">姓 名:</label>
  <p class="col-sm-6">
  <input type="text" class="form-control" id="name" v-model="user.name" placeholder="請輸入姓名">
  </p>
 </p>
 <p class="form-group">
  <label for="age" class="control-label col-sm-2 col-sm-offset-2">年 齡:</label>
  <p class="col-sm-6">
  <input type="text" class="form-control" id="age" v-model="user.age" placeholder="請輸入年齡">
  </p>
 </p>
 <p class="form-group">
  <label for="email" class="control-label col-sm-2 col-sm-offset-2">郵 箱:</label>
  <p class="col-sm-6">
  <input type="text" class="form-control" id="email" v-model="user.email" placeholder="請輸入郵箱">
  </p>
 </p>
 <p class="form-group text-center">
  <input type="button" value="添 加" class="btn btn-primary" @click="addUser">
  <input type="reset" value="重 置" class="btn btn-primary">
 </p>
 </form>
 <br/>
 <table class="table table-bordered table-hover">
 <caption class="h4 text-center text-info">用戶列表</caption>
 <thead>
 <tr>
  <th class="text-center">
  <input type="checkbox" @click="toggleAll" v-model="selectAll">
  </th>
  <th class="text-center">序號</th>
  <th class="text-center">姓名</th>
  <th class="text-center">年齡</th>
  <th class="text-center">郵箱</th>
  <th class="text-center">操作</th>
 </tr>
 </thead>
 <tbody>
 <tr v-for="(user, index) in users" class="text-center">
  <td>
  <input type="checkbox" :value="index" :id="index" v-model="delIndexes" @click="selectAll = false">
  </td>
  <td>{{ index+1 }}</td>
  <td>{{ user.name }}</td>
  <td>{{ user.age }}</td>
  <td>{{ user.email }}</td>
  <td>
  <button class="btn btn-danger" data-toggle="modal" data-target="#del" @click="nowIndex = index;delIndexes=[]">
   刪除
  </button>
  </td>
 </tr>
 <tr>
  <td colspan="6" class="text-right">
  <button class="btn btn-danger" data-toggle="modal" data-target="#del" @click="nowIndex = -1;delIndexes=[]">
   刪除所有
  </button>
  <button class="btn btn-danger" :data-toggle="modalToggle" :data-target="modalTarget"
   :class="{disabled:disableDelSelect}">
   刪除選中
  </button>
  </td>
 </tr>
 </tbody>
 </table>

 <!-- 彈出框 -->
 <p class="modal" id="del">
 <p class="modal-dialog">
  <p class="modal-content">
  <p class="modal-header">
   <button class="close" data-dismiss="modal">
   <span>&times;</span>
   </button>
   <h5 class="modal-title" v-show="delIndexes.length > 0">
   確認(rèn)要?jiǎng)h除用戶
   <span v-for="(value, index) in delIndexes">
    {{ users[value].name }}
    <span v-if="index < delIndexes.length - 1">、</span>
   </span>
   嗎?
   </h5>
   <h5 class="modal-title" v-show="delIndexes.length === 0 && nowIndex !== -1">
   確認(rèn)要?jiǎng)h除用戶{{ users[nowIndex] ? users[nowIndex].name : '' }}嗎?
   </h5>
   <h5 class="modal-title" v-show="delIndexes.length === 0 && nowIndex === -1">
   確認(rèn)要?jiǎng)h除所有用戶嗎?
   </h5>
  </p>
  <p class="modal-body text-center">
   <button class="btn btn-primary" data-dismiss="modal">取消</button>
   <button class="btn btn-primary" data-dismiss="modal" @click="deleteUser">確認(rèn)</button>
  </p>
  </p>
 </p>
 </p>
</p>
</body>
</html>

GitHub:vue-user-manager

以上是VueJS如何實(shí)現(xiàn)用戶管理系統(tǒng)的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!

網(wǎng)站欄目:VueJS如何實(shí)現(xiàn)用戶管理系統(tǒng)-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://muchs.cn/article0/ddhdio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)公司響應(yīng)式網(wǎng)站、Google、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管