0.0.35 • Published 11 months ago

vue3-useanimations v0.0.35

Weekly downloads
-
License
MIT
Repository
github
Last release
11 months ago

vue3-useanimations

vue3-useanimations is a collection of free animated open source icons for vue.js.

npm version npm downloads

Installation

Using Yarn:

yarn add vue3-useanimations

or using NPM:

npm install -S vue3-useanimations

Usage

Basic usage

import CreateApp from 'vue';
import UseAnimations from 'vue3-useanimations';
// EVERY ANIMATION NEEDS TO BE IMPORTED FIRST -> YOUR BUNDLE WILL INCLUDE ONLY WHAT IT NEEDS
import github from 'vue3-useanimations/dist/types/lib/github'

const App = () => <UseAnimations animation={github} />;

export default App;

Icons can be configured with inline props:

<UseAnimations animation={github} size={56} wrapperStyle={{ padding: 100 }} />

These props are available: | Prop | Default | Definition | | :------------- | :----------: | -----------: | | animation | / | animation file | | size | 24 | animation size | | strokeColor | 'inherit' | animation stroke color | | fillColor | '' | animation fill color | wrapperStyle | {} | wrapper div styles | | pathCss | '' | css string for the animation path element | | reverse | false | assing to true when eg. checkbox should be checked initally | | autoplay | false | false except in animations like loading etc. | | loop | false | false except in animations like loading etc. | | options | {} | provide any other custom options which will override the default ones | | speed | 1 | a number to determine the speed of lottie(1 is normal speed) | | effectType | - | 'CLICK_PLAY_AND_SEGMENTS' | 'CLICK_PLAY' | 'HOVER_PLAY_AND_STOP' | 'HOVER_PLAY_AND_BACKWARDS' | 'CLICK_PLAY_AND_BACKWARDS' |

expose

// use custom style
ref.value.animationId
<template>
  <div style="padding: 20px ">
    <span>radioButton</span>
    <UseAnimations
      :reverse="checked"
      @click="handleClick"
      :size="40"
      :wrapperStyle="{ marginTop: '5px' }"
      :animation="radioButton"
    />
  </div>
</template>

<script lang='ts' setup>
import { ref } from 'vue'
import { UseAnimations } from 'vue3-useanimations'
import radioButton from 'vue3-useanimations/dist/types/lib/radioButton'

const checked = ref(false)

const handleClick = () => {
  checked.value = !checked.value
}
</script>

Animation wrapped in element (use render prop).

<template>

  <UseAnimations
    :animation={heart}
    :size="60"
    @click="handleClick"
    :render="renderFunc"
  >
  </UseAnimations>
</template>

<script lang='ts' setup>
import { h } from 'vue'
import { UseAnimations } from 'vue3-useanimations'
import heart from 'vue3-useanimations/dist/types/lib/heart'

const renderFunc = (eventProps: any, animationProps: any) => {
  return h('button', {
    style: { padding: '20px' },
    type: 'button',
    ...eventProps
  }, h('div', { ...animationProps }))
}

const handleClick = () => {
  console.log('additional onClick cb is working');
}
</script>

Note that eventProps consists of onClick, mouseOver and other DOM events which you probably want to assign to your wrapping element (e.g. Button) and animationProps consist of an actual animation which you should spread inside a simple <div>

0.0.35

11 months ago

0.0.34

11 months ago

0.0.33

11 months ago

0.0.32

11 months ago

0.0.31

11 months ago

0.0.30

11 months ago

0.0.29

11 months ago

0.0.28

11 months ago

0.0.27

11 months ago

0.0.26

11 months ago

0.0.25

11 months ago

0.0.24

11 months ago

0.0.23

11 months ago

0.0.22

11 months ago

0.0.21

11 months ago

0.0.20

11 months ago

0.0.19

11 months ago

0.0.18

11 months ago

0.0.17

11 months ago

0.0.16

11 months ago

0.0.15

11 months ago

0.0.14

11 months ago

0.0.13

11 months ago

0.0.12

11 months ago

0.0.11

11 months ago

0.0.10

11 months ago

0.0.9

11 months ago

0.0.8

11 months ago

0.0.7

11 months ago

0.0.6

11 months ago

0.0.5

11 months ago

0.0.4

11 months ago

0.0.3

11 months ago

0.0.2

11 months ago

0.0.1

11 months ago