From 6004ac2ac375827fc3714164ef2c4432bf5b844b Mon Sep 17 00:00:00 2001 From: yulixing Date: Fri, 24 May 2019 17:48:01 +0800 Subject: [PATCH] fix settings bug --- .../games/details/settings/SettingPanel.vue | 35 +++++++++++++--- src/views/games/details/settings/index.vue | 40 ++++++++++++++++--- 2 files changed, 64 insertions(+), 11 deletions(-) diff --git a/src/views/games/details/settings/SettingPanel.vue b/src/views/games/details/settings/SettingPanel.vue index 26ab239..69ebd1f 100644 --- a/src/views/games/details/settings/SettingPanel.vue +++ b/src/views/games/details/settings/SettingPanel.vue @@ -64,7 +64,12 @@
添加新的配置项 - 清空 + 清空
@@ -194,6 +199,10 @@ export default { this.getSettingsList() }, methods: { + changeState(changed) { + this.$emit('change', changed) + console.log('子change', changed) + }, // left getGameInfo(cb) { request({ @@ -245,6 +254,7 @@ export default { this.tip = '配置已发布' } if (this.settingsForm.settings.length === 0) this.tip = '' + this.changeState(false) }) }, openEditor(index) { @@ -348,12 +358,14 @@ export default { } this.$message.success('配置保存成功!') this.tip = '配置已保存,待发布' + this.changeState(false) resolve() }) }) }, changTip() { this.tip = '配置已修改' + this.changeState(true) }, // right getSettingsList() { @@ -373,9 +385,18 @@ export default { }) }, clearSettings() { - this.selectedSettings = [] - this.settingKeys = [] - this.settingsForm.settings = [] + this.$confirm('是否要清空配置项?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }) + .then(() => { + this.selectedSettings = [] + this.settingKeys = [] + this.settingsForm.settings = [] + this.$message.success('已清空配置项!') + }) + .catch(() => {}) }, addSetting() { this.openNewSettingModal() @@ -391,8 +412,10 @@ export default { let index1 = 0 const index2 = this.settingKeys.indexOf(key) for (let i = 0; i < this.settingsForm.settings.length; i++) { - if (this.settingsForm.settings[i].key === key) index1 = i - break + if (this.settingsForm.settings[i].key === key) { + index1 = i + break + } } this.settingsForm.settings.splice(index1, 1) this.settingKeys.splice(index2, 1) diff --git a/src/views/games/details/settings/index.vue b/src/views/games/details/settings/index.vue index cfb8698..347d6cf 100644 --- a/src/views/games/details/settings/index.vue +++ b/src/views/games/details/settings/index.vue @@ -1,11 +1,11 @@