vue实现简易选项卡功能

本文实例为大家分享了vue实现简易选项卡功能的具体代码,供大家参考,具体内容如下

1. 效果:

1. 实现发布评论功能

2. 实现评论列表的展示

3. 使用标签页切换的方式来实现

4. 高亮显示当前标签页栏对应的导航

2.HTML

<div id="app">
        <p>
            <button @click="tab(0)" :class="current===0?'active':''">评论管理</button>
            <button @click="tab(1)" :class="current===1?'active':''">发布评论</button>
        </p>
        <div class="box2" v-show="current===0">
            <div v-for="item in list">
                <p>评论人:{{item.username}}</p>
                <p>评论时间:{{item.time}}</p>
                <p>评论内容:{{item.content}}</p>
            </div>
        </div>
        <div class="box1" v-show="current===1">
            <input v-model="username" type="text" placeholder="昵称"><br>
            <input v-model="content" type="text" placeholder="评论内容"><br>
            <button @click="submit">立即提交</button>
        </div>
</div>

3.CSS

<style>
        #app div {
            width: 600px;
            font-size: 14px;
            box-sizing: border-box;
        }
 
        .box1 {
            height: 200px;
            padding: 20px 0 0 10px;
            background: #eee;
        }
 
        .box2>div {
            height: 200px;
            padding: 20px 0 0 10px;
            background: #eee;
            margin-bottom: 10px;
        }
 
        p button {
            width: 100px;
            height: 35px;
            border: none;
            background: #e1e1e1;
        }
 
        p button.active {
            background: blue;
            color: #fff;
        }
 
        .box1 input {
            width: 350px;
            height: 35px;
            outline: none;
            border: 1px solid #ccc;
            margin-bottom: 10px;
            border-radius: 5px;
            box-sizing: border-box;
        }
 
        .box1 button {
            width: 80px;
            height: 35px;
            border: none;
            border-radius: 5px;
            background: #e1e1e1;
        }
</style>

4.引入vue.js文件

<script src="vue.js"></script>

5.实现发布评论选项卡功能

// 创建Vue的实例化对象
    new Vue({
        data: {
            // 控制选项卡切换
            current: 1,
            // 与输入框进行数据绑定
            username: '',
            content: '',
            // 创建评论管理列表数据
            list: []
        },
        methods: {
            // 点击提交按钮
            submit() {
                // 创建当前时间
                let date = new Date();
                let year = date.getFullYear();
                let mon = date.getMonth() + 1;
                let day = date.getDate();
                let time = year + "-" + mon + '-' + day;
                // 创建评论对象
                const infor = {
                    username: this.username,
                    content: this.content,
                    time
                }
                // 将评论对象追加到评论管理的列表末尾
                this.list.push(infor);
                //重置input输入框的内容
                this.username = '';
                this.content = "";
            },
            // 点击评论管理按钮、发布评论按钮(实现选项卡)
            tab(index) {
                this.current = index;
            }
        }
    }).$mount("#app");

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • vue实现选项卡及选项卡切换效果

    这里不跟大家再去把Vue文档上的一些指令用法或者基础知识再复述一遍,既然是从入门到实战,我直接将平时项目中需要实现的一些效果拆分成模块.你们遇到了相关的指令或者不知道怎么用的方法自己对着文档去查,再回过头来看我的实现代码.记住,通读Vue文档真的很重要,很重要! 这里的Vue以单文件的形式引入,另外代码在实现上会一步步的进行优化,客官不要着急! 下面是一个样式稍微丑陋,但功能OK的选项卡. <!DOCTYPE html> <html> <head> <meta c

  • Vue.js tab实现选项卡切换

    本文为大家分享了Vuejs 组件化开发tab组件实例,供大家参考,具体内容如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>index</title> <link rel="stylesheet" href="css/index.css" rel=&quo

  • vue中用动态组件实现选项卡切换效果

    最近在研究vue的路上,那么今天也算个学习笔记吧! 导航按钮: <div class="tab-title"> <p @click="a='tab1'"><router-link to='/collectnewcars'>新车</router-link><em></em></p> <p @click="a='tab2'"><router-link

  • Vue.js组件tabs实现选项卡切换效果

    今天给大家分享一个小颖自己写的vue组件,因为小颖也才接触vue没多久,如果有什么不足的地方,希望大家提出来,小颖加以改正.以下就是具体如何实现tabs啦. 调用示例: <template> <div class="tabs-contents"> <!-- 调用tabs组件 --> <tabs :flag.sync='tabsShowFlag' :navtitle='navTitle' :navdata='navData'> <di

  • Vue.js组件tab实现选项卡切换

    本文实例为大家分享了vue插件tab选项卡的具体代码,供大家参考,具体内容如下 效果图: 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> *{padding: 0;margin:

  • 使用vue.js写一个tab选项卡效果

    通常我们写tab选项卡的时候,一般都是用jq等去操作dom,给同级元素移除active类,然后,给被点击元素添加active类,但是在vue.js中,我们能不去操作dom我们就尽量不操作dom,那么该如何实现呢? 如果使用过vue-router,那么你会发现,vue-router在使用的时候其实就相当于一个tab选项卡,在点击之后,被点击的router-link元素会默认被添加上一个router-link-active的类,我们只需要设置这个类的样式即可.(当然,router-link-acti

  • vue动态组件实现选项卡切换效果

    本文实例为大家分享了vue动态组件实现选项卡切换的具体代码,供大家参考,具体内容如下 导航按钮: <div class="tab-title"> <p @click="a='tab1'"><router-link to='/collectnewcars'>新车</router-link><em></em></p> <p @click="a='tab2'"&g

  • vuejs实现标签选项卡动态更改css样式的方法

    html <ul class="header-list"> <li v-cloak v-for="(item,index) in headerList" v-on:click="selectMainTheme(index)"><a href="java:;" rel="external nofollow" :class="{'active':idx == index}

  • vue插件tab选项卡使用小结

    本文实例为大家分享了vue插件tab选项卡的使用方法,供大家参考,具体内容如下 基本用法 <template> <tab :options="tabOpt" :state.sync="stateIndex"></tab> </template> <script type="text/babel"> import tab from 'components/tab_touch'; expor

  • vue中选项卡点击切换且能滑动切换功能的实现代码

    具体代码如下所述: <div> <div class="navlist"> <ul> <li class="navli" v-for="(item,index) in navList" :class="{'activeT':nowIndex===index}" @click="tabClick(index)"><i>{{item.name}}<

随机推荐