diff --git a/src/components/AssetsManagement/AssetPreview.vue b/src/components/AssetsManagement/AssetPreview.vue index 2258a34..7cf31f1 100644 --- a/src/components/AssetsManagement/AssetPreview.vue +++ b/src/components/AssetsManagement/AssetPreview.vue @@ -48,7 +48,11 @@ export default{ gameEngine?.stop(); }, watch:{ + object(n){ + this.obj = n; + }, async obj(){ + if (!this.obj) return; gameEngine = new GameEngine(); this.gameEngine = gameEngine; await gameEngine.init(this.$refs.target, {gizmo: true}); diff --git a/src/pages/game-objects/[[id]].vue b/src/pages/game-objects/[[id]].vue index 7d2301f..a7a8acf 100644 --- a/src/pages/game-objects/[[id]].vue +++ b/src/pages/game-objects/[[id]].vue @@ -4,7 +4,7 @@ {{ id == 'add' ? l.createGameObject : l.editGameObject }} - + {{ l.preview }} @@ -28,13 +28,13 @@ :disabled="!valid"> {{ l.saveAndPreview }} - {{ l.publish - }} + + {{ l.publish }} - + @@ -52,7 +52,7 @@ export default { data() { return { - panel: 'edit', + panel: this.$route.query?.tab || 'edit', object: {}, valid: false, rules: { @@ -92,16 +92,17 @@ export default { let result = await this.$api.gameObject.save(fd); Object.assign(this.object, result.data.object); if (this.id == 'add') { - this.$router.replace({ params: { id: this.object.id } }); + this.$router.replace({ params: { id: this.object.id }, query:{ tab:'preview' } }); } - this.panel = 'preview'; - await this.$nextTick(); - if (!params?.thumbOnly) await this.$refs.assetPreview.loadAsset(); + // await this.$nextTick(); + // this.panel = 'preview'; + // if (!params?.thumbOnly) await this.$refs.assetPreview.loadAsset(); } catch (err) { console.error(err); } - this.loading = false - this.panel = 'preview'; + this.loading = false; + // await this.$nextTick(); + // this.panel = 'preview'; }, async captureThumbnail() {