Vue复习

本文介绍了Vue的基本概念,包括HTML模板中的v-model指令、条件渲染(v-if,v-else-if,v-else)以及v-for循环用于列表渲染。还展示了如何在Vue项目中创建导航、表单和处理数据绑定。
摘要由CSDN通过智能技术生成

 Vue入门

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>

    <h1>上下文背景</h1>
    <p>请使用上下文背景类来提供“由颜色表达的某种意义”。</p>
    <p>请注意,如果您想要不同的文本颜色,您还可以添加 .text-* 类:</p>
    <p class="bg-primary text-white">此文本很重要。</p>
    <p class="bg-success text-white">此文本表示成功。</p>
    <p class="bg-info text-white">此文本代表了一些信息。</p>
    <p class="bg-warning text-white">此文本表示警告。</p>
    <p class="bg-danger text-white">此文本代表危险。</p>
    <p class="bg-secondary text-white">次要背景颜色。</p>
    <p class="bg-dark text-white">深灰色背景颜色。</p>
    <p class="bg-light text-dark">浅灰色背景色。</p>


</head>
<body>

<div class="container mt-3">
  <h2>导航</h2>
  <p>基础的水平菜单:</p>
  <ul class="nav">
    <li class="nav-item">
      <a class="nav-link" href="#">链接</a>
    </li>
    <li class="nav-item">
      <a class="nav-link" href="#">链接</a>
    </li>
    <li class="nav-item">
      <a class="nav-link" href="#">链接</a>
    </li>
    <li class="nav-item">
      <a class="nav-link disabled


    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.2/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>

 

VUE常见指令

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../vue基础代码/js/vue.js"></script>
</head>
<body>
    <!-- <div id="app">
        <a v-bind:href="url">链接1</a>
        <a :href="url">链接2</a>
        <input type="text" v-model="url">
        <br><br>
        <input type="button" value="按钮1" v-on:click="handle()">
        <input type="button" value="按钮2" @click="handle()">
    </div> -->
    <div id="app">
        年龄<input type="text" v-model="age">经判定,为:
        <span v-if="age <= 35">年轻人(35岁及以下)</span>
        <span v-else-if="age>35 && age<60">中年人(35-60)</span>
        <span v-else>老年人(60及以上)</span>
        <br><br>
        年龄<input type="text" v-model="age">经判定,为:
        <span v-show="age <= 35">年轻人(35岁及以下)</span>
        <span v-show="age>35 && age<60">中年人(35-60)</span>
        <span v-show>老年人(60及以上)</span>
        <br><br>
    </div>
    <div id="app1" ><!-- v-for="(遍历出来的元素,遍历的索引)in 遍历的元素" -->
        <div v-for="addr in addrs" >{{addr}}</div>
        <div v-for="(addr,index)in addrs" >{{index}}:{{addr}}</div>
    </div>
</body>
<script>
    /* new Vue({
        el:"#app",
        data:{
          url:"http://www.baidu.com"  
        }
    })
    new Vue({
        el:"#app",
        data:{
          
        },
        methods: {
            handle:function(){
                alert("你点我了一下");
            }
        }
    }) */
    new Vue({
        el:"#app",
        data:{
            age:20
        },
        methods:{

        }
    })
    new Vue({
        el:"#app1",
        data:{
            addrs:["北京","上海","西安","成都","深圳"]
        },
        methods:{

        }
    })
</script>
</html>

 

Vue 常见指令练习

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../vue基础代码/js/vue.js"></script>
</head>
<body>
    <div id="app">
        <table border="1px" cellspacing="0" width="60%">
            <tr>
                <th>编号</th>
                <th>姓名</th>
                <th>年龄</th>
                <th>性别</th>
                <th>成绩</th>
                <th>等级</th>
            </tr >
            <tr align="center" v-for="(user, index) in users"  >
                <td>{{index+1}}</td>
                <td>{{user.name}}</td>
                <td>{{user.age}}</td>
                <td>
                    <span v-if="use.gender==1">男</span>
                    <span v-if="use.gender==2">女</span>
                </td>
                <td>{{user.score}}</td>
                <td>
                    <span v-if="user.score>=85">优秀</span> 
                    <span v-else-if="user.score<85">及格</span>
                    <span v-else style="color:red">不及格</span>
                </td>
            </tr>
        </table>
    </div>
</body>
<script>
    new Vue({
        el:"#app",
        data:{
            users:[{
                name:"Tom",
                age:20,
                gender:1,
                score:78,
            },{
                name:"Rose",
                age:18,
                gender:2,
                score:86,
            },{
                name:"Terry",
                age:26,
                gender:1,
                core:90,
            },{
                name:"Tony",
                age:30,
                gender:1,
                score:52,
            }]
    },
    methods: {
        
    },
    })
</script>
</html>

Vue-project练习

 

<template>
    <div>
        <el-container style="height: 700px; border: 1px solid #eee">
            <el-header style="font-size:40px;background-color: rgb(238, 241, 246)">tlias智能学习辅助系统</el-header>
            <el-container>
              <el-aside width="230px" style="border: 1px solid #eee">
                <el-menu :default-opends="['1','3']">
                  <el-submenu index="1">
                    <template slot="title"><i class="el-icon-message"></i>系统信息管理</template>
                    <el-menu-item index="1-1">
                      <router-link to="/dept">部门管理</router-link>
                    </el-menu-item>
                    <el-menu-item index="1-2">
                      <router-link to="/emp">员工管理</router-link>
                    </el-menu-item>
                    
                  </el-submenu>
                  </el-menu>
            </el-aside> 
          <el-main>
            <!-- from表单 -->
            <el-form :inline="true" :model="searchFrom" class="demo-form-inline">
              <el-form-item label="姓名">
                <el-input v-model="searchFrom.name" placeholder="姓名"></el-input>
              </el-form-item>
              <el-form-item label="性别">
                <el-select v-model="searchFrom.region" placeholder="性别">
                  <el-option label="男" value="1"></el-option>
                  <el-option label="女" value="2"></el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="入职日期">
                <!-- 日期选择器 -->
                <el-date-picker
                  v-model="searchFrom"
                  type="daterange"
                  range-separator="至"
                  start-placeholder="开始日期"
                  end-placeholder="结束日期">
                </el-date-picker>
              </el-form-item>
              <el-form-item>
                <el-button type="primary" @click="onSubmit">查询</el-button>
              </el-form-item>
            </el-form>
            <el-table :data="tableData" border>
              <el-table-column prop="name" label="姓名" width="180">
              </el-table-column>
              <el-table-column prop="image" label="图像" width="180">
                <template slot-scope="scope">
                  <img :src="scope.row.image" width="100px" height="70px">
                </template>
              </el-table-column>
              <el-table-column prop="gender" label="性别" width="140">
                <template slot-scope="scope">
                  {{ scope.row.gender==1?'男':'女' }}
                </template>
              </el-table-column>
              <el-table-column prop="job" label="职位" width="140">
              </el-table-column>
              <el-table-column prop="entrydate" label="入职日期" width="180">
              </el-table-column>
              <el-table-column prop="updatetime" label="最后操作时间" width="230">
              </el-table-column>
              <el-table-column  label="操作">
                <el-button type="primary" size="mini">编辑</el-button>
                <el-button type="danger" size="mini">删除</el-button>
              </el-table-column>
            </el-table> 
            <br><br>
            <el-pagination 
              background 
              layout="sizes,prev, pager, next,jumper,total" 
              @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
              :total="1000">
            </el-pagination>
          </el-main>
        </el-container>
      </el-container>
    </div>
</template>
<script>
 /* import axios from 'axios';  */

export default {
    data() {
      return {
        tableData:[],
        searchFrom:{
          name:"",
          gender:"",
          entrydata:[]
        }
      }
    },
    methods:{
      onSubmit:function(){
        alert("查询数据");
      },
      handleSizeChange:function(val){
        alert("每页记录变化"+val)
      },
      handleCurrentChange:function(val){
        alert("页码发生变化"+val)
      }

    }
   /*  mounted() {
      //发送异步请求,获取数据
      axios.get("http://yapi.smart-xwork.cn/mock/169327/emp/list").then((result)=>{
        this.tableData=result.data.data;
      })
    },  */
}
</script>
<style>

</style>

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值