zoukankan      html  css  js  c++  java
  • vue2.0使用动态组件实现tab切换效果(vue-cli

    转载于:点击进入

    vue2.0使用动态组件实现tab切换效果(vue-cli)

     
    复制代码
    <template>
        <div>
          <div>#动态组件实现tab切换效果#</div><br><br><br>
            <nav>
              <a href="javascript:void(0);" @click="toggleTabs(first);">{{first}}</a>
                    <a href="javascript:void(0);" @click="toggleTabs(second);">{{second}}</a>
                    <a href="javascript:void(0);" @click="toggleTabs(third);">{{third}}</a>
            </nav>
    
          //动态地绑定到它的 is 特性,我们让多个组件可以使用同一个挂载点,并动态切换。如果把切换出去的组件保留在内存中,可以保留它的状态或避免重新渲染。为此可以添加一个 keep-alive 指令参数 
          <first :is="currentView" keep-alive></first>
          </div>
    </template>
    
    <script  type="text/ecmascript-6">
    //导入子组件
    import first from 'components/first';
    import second from 'components/second';
    import third from 'components/third';
    
    export default {
            data () {
                 return {
                     first: "first", //导航栏文本1
                    second: "second", //导航栏文本2
                    third: "third", //导航栏文本3
                    currentView: 'first', //默认选中first子组件
                 };
             },
             components: { 
                 first,
                 second,
                 third
             },
             methods: {
                 toggleTabs (tabText) {
                     this.currentView = tabText;
                 }
             }
        }
    </script>
    
    //使用sass
    <style lang="scss">
        nav{
            600px;
            background:#eeeeee;
            padding:0 10px;
    
          & a{
            text-decoration: none;
            color:#000;
            display: inline-block;
            150px;
            text-align:center;
            background:#aaaaaa;
            padding:10px;
          }
        } 
    </style>
    复制代码

    子组件

    first.vue

    <template>
        <div>我是第一个子组件</div>
    </template>
    <script type="text/ecmascript-6">
    </script>
    <style lang="scss"></style>

    second.vue

    <template>
        <div>我是第二个子组件</div>
    </template>
    <script type="text/ecmascript-6">
    </script>
    <style lang="scss"></style>

    third.vue

    <template>
        <div>我是第三个子组件</div>
    </template>
    <script type="text/ecmascript-6">
    </script>
    <style lang="scss"></style>
     
  • 相关阅读:
    mkconfig文件里的"cat << EOF >> config.h"
    (ARM v7)信号量、互斥体代码追踪
    (ARM v7)自旋锁、读写锁、顺序锁代码追踪
    mac 系统上安装navicat
    git2consul配置管理工具使用教程
    Spring Cloud Feign如何上传文件
    spring-cloud feign的多参数传递方案
    Consul下载安装及运行教程
    比SecureCRT更好用的工具MobaXterm下载安装使用教程
    Linux下RocketMQ下载安装教程
  • 原文地址:https://www.cnblogs.com/liangru/p/9071314.html
Copyright © 2011-2022 走看看