集中升级
This commit is contained in:
48
project/dvui/components/AiSprite.vue
Normal file
48
project/dvui/components/AiSprite.vue
Normal file
@@ -0,0 +1,48 @@
|
||||
<template>
|
||||
<section class="AiSprite" :ref="ref"/>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import * as spritejs from 'spritejs'
|
||||
|
||||
export default {
|
||||
name: "AiSprite",
|
||||
props: {
|
||||
width: {default: 400},
|
||||
height: {default: 300},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
ref: ""
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
init(count = 0) {
|
||||
const container = this.$refs[this.ref]
|
||||
if (container) {
|
||||
let {width, height} = this.$props
|
||||
const scene = new spritejs.Scene({container, width, height, ...this.$attrs}),
|
||||
layer = scene.layer()
|
||||
/**
|
||||
* layer 图层
|
||||
* lib spritejs的依赖库
|
||||
*/
|
||||
this.$emit("init", {layer, lib: spritejs})
|
||||
} else if (count == 20) {
|
||||
console.log(this.$refs)
|
||||
} else setTimeout(() => this.init(++count), 500)
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.ref = "AiSprite_" + new Date().getTime()
|
||||
},
|
||||
mounted() {
|
||||
this.init()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.AiSprite {
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user