0.0.7 • Published 5 years ago

vue-tabsi v0.0.7

Weekly downloads
6
License
MIT
Repository
github
Last release
5 years ago

🌟 Tabsi

downloads npm-version license

Convenient and easy way to implement Tabs, Tab lists and Tab Contents within your Vue apps.

Demo *the code used is in the Example below

✨ Features

  • Easy to use
  • Unlimited number of tabs
  • Has some flexibility
  • You can include pre-defined styles or add your own

📚 Getting Started

$ yarn add vue-tabsi
# or
$ npm install vue-tabsi

🚀 Usage

  1. Using the components build the desired tabs structure. Using the v-model on the <v-tabs> component change the current tab shown however you want.
  2. Add all of the <v-tabs> within the <v-tabs> component and assign a label to them that will be used in the tab list for the corresponding tab.
  3. Add the content to each of the <v-tabs> as desired,
  4. You are good to go! 🏭
// Example usage within a component
<template>
  <div id="app">
    <v-tabs v-model="currentTabIndex">
      <v-tab label="First Tab">
        <p>
          Hello from the First Tab.
        </p>
      </v-tab>
      <v-tab label="Second Tab">
        <p>
          Hello from the Second Tab.
        </p>
      </v-tab>
    </v-tabs>
  </div>
</template>

<script>
import Vue from 'vue';
import { VTab, VTabs } from 'vue-tabsi';

export default {
  components: {
    VTabs,
    VTab
  },

  tabs: {
    firstTab: 0,
    secondTab: 1
  },

  data() {
    return {
      currentTabIndex: this.$options.tabs.firstTab
    };
  }
};
</script>

You can also install the plugin and its sample styles and have these components globally available within all of your vue components.

import Vue from 'vue';
import VueTabsi from 'vue-tabsi';
import 'vue-tabsi/dist/vue_tabsi.css';

Vue.use(VueTabsi);

You can now use <v-tabs> and <v-tab> components anywhere in your Vue app.

📖 Documentation

There are two components that are included within this package

Tabs Component <v-tabs></v-tabs>

PropsDescriptionTypeRequiredDefault
currentIndexThe current tab indexIntegertrue-
tabsClassClass of the root elementStringfalsev-tabs
tabListClassClass of the tab list elementStringfalsev-tablist
tabListTabClassClass of the tab element in the tab listStringfalsev-tablist-tab
tabActiveClassClass of the tab list elementStringfalsev-tab-active
wideWether to expand tablist to full widthBooleanfalsefalse

And there is only one event on this component:

EventDescriptionPayload
changeWhen a tab is changedNumber Index of the new tab

Tab Component <v-tab></v-tab>

PropsDescriptionTypeRequiredDefault
labelLabel used in the tab listStringtrue-
tabClassClass of the root elementStringfalsev-tab

⛑ Support

Reach out to me at one of the following places!

  • Website at bangjelkoski.com
  • Twitter at @bangjelkoski

🔓 License

License

0.0.7

5 years ago

0.0.6

5 years ago

1.0.5

5 years ago

1.0.2

5 years ago

1.0.4

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago