美文网首页程序员技术栈
在vue里添加的lottie动画

在vue里添加的lottie动画

作者: stutterr | 来源:发表于2018-08-03 09:41 被阅读24次

    什么是Lottie?

    Lottie是一个iOS,Android和React Native库,可以实时渲染After Effects动画,允许应用程序像使用静态图像(在这里动画被转化成json文件)一样轻松使用动画。网上也有丰富的动画资源可供我们选择
    Lottiefiles

    为什么Lottie?

    1. 灵活的After Effects功能
    我们目前支持实体,形状图层,蒙版,alpha遮罩,修剪路径和虚线图案。我们将定期添加新功能。
    2. 以你喜欢的方式操作动画
    可以前进,后退,并且最重要的是你可以对动画进行编程以响应任何交互。
    3. 文件小
    文件非常小,通常可以以json文件的形式存在,可以通过json api来加载。

    使用Lottie

    我们在vue中可以使用# chenqingspring/vue-lottie 来引入Lottie

    安装vue-lottie包

    npm install --save vue-lottie

    引用vue-lottie

    在main.js引入并全局注册组件

    import lottie from 'vue-lottie';
    Vue.component('lottie', lottie)
    

    引入Lottie动画资源

    将我们在Lottiefiles下载下来的相应动画资源保存到项目中并映入

    // 第一步:script中引入资源
    import * as animationData from "../assets/lottie/loading.json";
    
    // 第二步:使用组件
    <lottie :options="defaultOptions" :height="200" :width="200" v-on:animCreated="handleAnimation" />
    
    // 第三步:data里面添加相应属性
    data(){
        return {
            defaultOptions: { animationData: animationData },
            animationSpeed: 1,
            anim: {}
        }
    }
    
    //第四步:定义方法
    methods: {
        handleAnimation: function(anim) {
            this.anim = anim;
            console.log(anim); //这里可以看到 lottie 对象的全部属性
        },
    }
    

    之后动画就被引入成功了,详细的使用方法请看vue-lottie
    文档

    相关文章

      网友评论

      • 4e19d9c0a5e8:请问可以在微信小程序里面引入吗
        bab15446c72d:@刘迪奥 解决 此处防止大家掉坑里 defaultOptions: { animationData: animationData},改为 defaultOptions: { animationData: animationData.default },
        bab15446c72d:请问。。。我这个报错是什么原因啊。。。。Error: <svg> attribute viewBox: Expected number, "0 0 undefined undefi…"
        stutterr:@茶与布朗_ba87 大概率不行

      本文标题:在vue里添加的lottie动画

      本文链接:https://www.haomeiwen.com/subject/neaevftx.html