0.1.1 • Published 4 years ago

vue-tuto v0.1.1

Weekly downloads
13
License
-
Repository
github
Last release
4 years ago

vue-tuto

Sep-28-2020 15-43-24

Installation

$ yarn add vue-tuto

or

$ npm install vue-tuto

Usage

use global plugin

// main.js
import Vue from 'vue';
import VueTuto from 'vue-tuto';

import 'vue-tuto/dist/tutorial.css';

Vue.use(VueTuto);

use component

// ###.vue

import { VueTutorial } from 'vue-tuto';
import 'vue-tuto/dist/tutorial.css';

export default {
  components: {
    VueTutorial,
  },
};

component

// ###.vue
<template>
  <tutorial
    :steps="steps"
    :run="run"
    use-jump
    @end="handleCallback"
  />
</template>
<script>
// .. import
export default {
  // ... use component
  data() {
    return {
      steps: [
        {
          target: '.box-item-0',
          content: 'blah~ blah~',
          showSkip: true,
        },
        {
          target: '.box-item-1',
          content: 'blah~ blah~2',
          showSkip: true,
        },
        {
          target: '.box-item-2',
          content: 'blah~ blah~3',
        },
      ],
      run: false,
    }
  },
  methods: {
    handleCallback(reason) {
      // callback logic
    }
  },
}
</script>

Props

nametypedefaultdescription
buttonOptionobject{}tour 버튼의 스타일과 text를 변경
maxCountnumber0튜토리얼 표시 횟수 limit, 0 의 경우 무제한
overlayModetext'next'next, prev, skip 등 오버레이 클릭시 발생 이벤트
paramsobject{}popper option link
runbooleanfalsetutorial 실행 플래그
stepsarray[]step 정보
showSkipbooleanfalse스킵 버튼 표시 여부
tutorialNamestring'tutorial'localStorage 에 저장될 튜토리얼 key name
useJumpbooleanfalsespotlight 로 scroll 이벤트 발생
  • buttonOption (default: {})
{
  skip: {
    text: '스킵',
    style: {
      color: 'white', fontWeight: 'bold', backgroundColor: 'black',
    }
  },
  next: { text: '다음', lastText: '닫기' },
  prev: { text: '이전' },
}
  • steps (default: [])
[
  {
    target: '.element .query',
    duration: 1000,
    offset: -100,
    padding: 10,
    useJump: false, // 개별 처리
    showSkip: false, // 개별 처리
  }
]