当前位置: 首页 > news >正文

新网站建设验收淘宝seo软件

新网站建设验收,淘宝seo软件,网站建设项目的费用做什么科目,dedecms能做什么网站把一个json的动图展示在页面上。使用的是插件lottie-miniprogramhttps://blog.csdn.net/qq_33769914/article/details/128705922之前介绍过。但是发现使用在taro使用的时候他会报错。那可能是因为我们 wx.createSelectorQuery().select(#canvas).node(res > {console.log(re…

把一个json的动图展示在页面上。使用的是插件lottie-miniprogramhttps://blog.csdn.net/qq_33769914/article/details/128705922之前介绍过。但是发现使用在taro使用的时候他会报错。

那可能是因为我们

wx.createSelectorQuery().select('#canvas').node(res => {

   console.log(res)//打印这个的时候是null。所以下面的res.node就会报错

const canvas = res.node

const context = canvas.getContext('2d')

})

我们可以应该把获取的生命周期改成useDidShow。然后再加个延迟。

useDidShow(()=>{

setTimeout(()=>{

init()

}, 0)

})

const init = ()=> {

if (inited.value) {

return

}

Taro.createSelectorQuery().select(`#lottie`).node(res => {

console.log("res",res)

const canvas = res.node

if(canvas){

const context = canvas.getContext('2d')

if (pixelRatio.value) {

context.scale(pixelRatio.value, pixelRatio.value)

canvas.width = 300* pixelRatio.value

canvas.height = 300* pixelRatio.value

}

Lottie.setup(canvas)

lottieObj = Lottie.loadAnimation({

loop: props.loop,

autoplay: props.autoplay,

animationData: props.jsonData,

rendererSettings: {

context,

},

})

inited.value = true

// emits('onComplete')

}

}).exec()

}

全部代码如下。把它方做一个组件使用lottieView.vue

<template>

<canvas class="canvas" :id="`lottie`" type="2d" />

</template>

<script lang="ts" setup>

import { onMounted, defineProps, ref } from 'vue'

import Taro from "@tarojs/taro";

import Lottie from 'lottie-miniprogram'

import lottieJson from './data.json'    //json的动画可以找产品要

const props = defineProps({

id: {

type: String,

default: ''

},

jsonData: {

type: Object,

default: lottieJson

},

autoplay: {

type: Boolean,

default: false

},

loop: {

type: Boolean,

defalut: false

},

assetsPath: {

type: String,

defalut: ''

}

})

const emits = defineEmits(['onComplete'])

const sysinfo = Taro.getSystemInfoSync(); //获取设备系统的数据

const pixelRatio = ref(sysinfo.pixelRatio)

let lottieObj: any = undefined

Taro.useDidShow(()=>{

console.log('lottie---useReady');

setTimeout(()=>{

init(1)

}, 0)

})

// onMounted(()=>{

// console.log('lottie---onMounted');

// setTimeout(()=>{

// init(3)

// }, 10)

// })

const inited = ref(false)

// 初始化加载动画

const init = (type)=> {

console.log("type",type)

if (inited.value) {

return

}

Taro.createSelectorQuery().select(`#lottie`).node(res => {

console.log("res",res)

const canvas = res.node

if(canvas){

const context = canvas.getContext('2d')

if (pixelRatio.value) {

context.scale(pixelRatio.value, pixelRatio.value)

canvas.width = 300* pixelRatio.value

canvas.height = 300* pixelRatio.value

}

Lottie.setup(canvas)

lottieObj = Lottie.loadAnimation({

loop: props.loop,

autoplay: props.autoplay,

animationData: props.jsonData,

rendererSettings: {

context,

},

})

inited.value = true

// emits('onComplete')

}

}).exec()

}

const play = () => {

lottieObj && lottieObj.play()

}

const stop = () => {

lottieObj && lottieObj.stop()

}

const pause = () => {

lottieObj && lottieObj.pause()

}

defineExpose({

play,

stop,

pause

})

</script>

<style lang="less"></style>

使用import LottieView from '@/magic-head/pages/components/lottieView'

<LottieView

class="lottie"

:autoplay="true"

:loop="true"

/>

http://www.dinnco.com/news/22113.html

相关文章:

  • 网站 备案信息网络营销推广的总结
  • 大型电子商务网站开发阿里云域名注册官网
  • 哪些网站建设公司宝塔没有域名直接做网站怎么弄
  • 西安通程建设工程 网站托管竞价账户哪家好
  • wordpress注册码插件河南优化网站
  • 南城仿做网站结构优化设计
  • 淄博优化网站营销策略有哪些内容
  • 电器工程东莞网站建设seo是什么意思怎么解决
  • 犀牛云做网站怎么样关键词优化的五个步骤
  • 做网站认证违法吗杭州优化外包
  • 做新闻网站数据辽阳网站seo
  • 做网站是怎么收费的是按点击率百度竞价推广代运营公司
  • 网站优化排名多少钱深圳外包网络推广
  • 手机上可以做网站网站外链有多重要
  • 一个ip 做2个网站吗台州网站建设平台
  • 对网站建设的考核机制自己开发网站怎么盈利
  • 义马网站开发商品推广软文写作500字
  • 网站搜索算法seo外链发布平台有哪些
  • 广州品牌seo推广湛江seo
  • 网站建设与网页设计制作教程海豹直播nba
  • 怎样修改wordpress密码安阳企业网站优化外包
  • 电子商务网站规划与网页制作wordpress免费网站
  • 好听的公司名称重庆seo网络优化师
  • 怎么用asp做网站营销软件网
  • 网站建设公司的性质德州百度推广公司
  • 凡科建站公司宁波seo推广联系方法
  • 陇南市建设局官方网站优化大师tv版
  • 可以在哪个网站做封面赚钱公司网站费用
  • 可不可以免费创建网站网络营销教程
  • 广西公司做网站上海seo优化公司kinglink