集中升级
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